Com o aperfeiçoamento contínuo das estratégias de negociação de quantificação, os usuários também exigem mais e mais uma mudança de posicionamento em tempo real, por exemplo: Web online logs, aplicativos móveis, WeChat, etc., que exigem que as mudanças de posicionamento da conta sejam transmitidas em tempo real, ativamente para o navegador, celular, etc. Por isso, este artigo é destinado a inventores de quantificação.FMZ.COMA estratégia My Language permite que o posicionamento seja empurrado em tempo real para o aplicativo móvel e o WeChat.
O código fonte completo para este artigo pode ser consultado aqui:https://www.fmz.com/strategy/305785A partir daí, o blog foi criado para ajudar os usuários a escreverem e escreverem códigos.
Para facilitar a demonstração, este artigo cita a estratégia de negociação anterior de William W%R, com o link para a estratégia:https://www.fmz.com/strategy/283024A lógica da estratégia é composta de valores de William e linha média, a estratégia completa e a configuração de retrospecção podem ser obtidas clicando neste link, abaixo está o código da estratégia:
HC := HHV(HIGH, 14) - CLOSE;
HL := HHV(HIGH, 14) - LLV(LOW, 14);
WR := -100 * HC / HL;
MA20 : EMA2(C, 14);
C1 := WR < -60 && C > MA20;
C2 := WR > -15 && C < MA20;
C1, BPK;
C2, SPK;
Inventor quantificaçãoFMZ.COMA linguagem My é um envelope adicional da linguagem JavaScript, destinado a ajudar os iniciantes a obter uma melhor introdução à quantificação. A linguagem My possui características de sintaxe concisa, capaz de lidar com algumas estratégias lógicas simples, mas que podem ser complicadas em relação a outras estratégias complexas.
%%
// 这里面可以调用发明者量化的任何API
scope.TEST = function(obj) {
return obj.val * 100;
}
%%
收盘价:C;
收盘价放大100倍:TEST(C);
上一个收盘价放大100倍:TEST(REF(C, 1)); // 鼠标移动到回测的K线上就会提示变量值
Como mostrado no código acima, a função de aprimoramento da linguagem permite que a linguagem My seja programada em conjunto com a linguagem JavaScript.https://www.fmz.com/doc/2569#语言增强
Entre eles:
Objeto de escopo 1.O objecto scope, pode adicionar propriedades e atribuir funções anônimas às propriedades.
2、scope.get_locals ((
Na estratégia da linguagem My, a função BKVOL obtém o número de sinais de compra e venda, ou seja, a atual posição de várias cabeças. A função SKVOL obtém o número de sinais de venda e venda, ou seja, a atual posição de cabeças vazias. Então, podemos calcular a mudança de posição atual através de BKVOL menos SKVOL.
HC := HHV(HIGH, 14) - CLOSE;
HL := HHV(HIGH, 14) - LLV(LOW, 14);
WR := -100 * HC / HL;
MA20 : EMA2(C, 14);
C1 := WR < -60 && C > MA20;
C2 := WR > -15 && C < MA20;
C1, BPK;
C2, SPK;
%%
// 下面代码附加到任何My语言策略最后都可以实现仓位变化推送到手机App与微信
if (typeof(scope._tmp) !== 'number') {
scope._tmp = 0;
}
var pos = scope.get_locals('BKVOL') - scope.get_locals('SKVOL');
if (pos != scope._tmp) {
scope._tmp = pos;
Log('通知仓位变化:', scope.symbol, pos, '@');
}
%%
No código acima, colocamos a estratégia de negociação William W%R e a função de mudança de posição de push em conjunto para que a estratégia de negociação seja sincronizada em tempo real com as mudanças de posição e empurrada para o aplicativo móvel e o WeChat.
Em seguida, nós executamos uma verificação de disco real, criando um disco real para selecionar o OKEX spot, com o par de moedas definido como LTC_USDT (commodity futures e futuros de moedas digitais também podem usar essa função, operando da mesma forma)
1, sinalização de gatilho, log da Web 2o, sinalização desencadeada, mensagem do aplicativo do celular Três, sinais são disparados e mensagens são enviadas.
Acima, utilizamos uma estratégia de transação simples de My Language William W%R, com o módulo de push de mensagens desenvolvido pelo módulo de aprimoramento de linguagem em My Language, para implementar a estratégia de push de posições em tempo real para aplicativos móveis e WeChat. O código do módulo pode ser adicionado a qualquer estratégia de My Language para implementar a mudança de posições para aplicativos móveis e WeChat e lançar vários tipos de push para diferentes cenários para atender às suas necessidades de push personalizadas.