Negociação de pares e arbitragem em várias moedas. O confronto. - página 85

 
Roman Poshtar #:
Encontrei todos os perus sobre o assunto. Vou colocá-las lá amanhã e veremos. Até agora.

Como você calculou os volumes?

Você não pode negociar cruzamentos e divergências de negociação, você deve fazer assim: https://www.mql5.com/ru/forum/448777/page84#comment_50303521.

caso contrário, é ruído. Mais precisamente, então não se negocia tanta divergência, mas um par de dois.

Парный трейдинг и мультивалютный арбитраж. Разборки.
Парный трейдинг и мультивалютный арбитраж. Разборки.
  • 2023.11.02
  • www.mql5.com
Добрый день уважаемые форумчане. Немного почитав форум, наткнулся на несколько тем по арбитражу и парному трейдингу...
 
Maxim Kuznetsov #:


De acordo com meus cálculos em cada momento do tempo, os coeficientes são os seguintes

0
0.3280
0.6720 

E o coeficiente zero caminha ao longo do triângulo, dependendo do sinal de lucratividade (+ -) deste ou daquele instrumento.

0.6316
0.3684
0


Cheguei à conclusão de que o zero é substituído por um.
Portanto, em um momento diferente do tempo, qualquer símbolo pode ter uma liquidez com coeficiente 1.

 

Hoje fiz um teste de deslizamento em um par.
O deslizamento ainda não entrou em colapso, estou observando ))
E isso sem aplicar a fórmula, pois ainda não implementei o cálculo.
Apenas no rendimento de dois instrumentos.

te

Em princípio, aqueles que acham difícil implementar a fórmula de cálculo podem até mesmo capturar os controles deslizantes sem ela.
Basta calcular o rendimento e você verá tudo.
 
Maxim Kuznetsov #:

VolumeA=LgA/(LgA+LgB)

A taxa de mudança de preço do triângulo está mudando constantemente. É claro que, no momento da entrada, você pode escolher uma quantidade semelhante à taxa de mudança de preço no momento da entrada, mas essa quantidade será relevante apenas no momento da entrada. Em um segundo, tudo pode mudar e, muito provavelmente, mudará.

 
Maxim Kuznetsov taxa de câmbio dólar para dólar = 1, const LgU=Ln(1)

VolumeA*=LgA^2/(LgA^2+LgB^2+LgU^2) ; (* não normalizado)

Correto, embora pareça estar correto

É claro que é estranho: estritamente ao contrário... deveria ser "o volume é inversamente proporcional ao logaritmo do preço"

e a fórmula correta de como exatamente "inversamente proporcional" deve ser pensada, talvez alguém possa lhe dizer :-)



 
Maxim Kuznetsov #:

algo sobre o cálculo do volume para a negociação de discrepância está ficando estranho:

...

Corrija-o, embora pareça estar correto

Idealmente, você também deve levar em conta a volatilidade dos instrumentos,
, pois o desempenho de negociação do USDCHF é quase duas vezes menor do que o do GBPUSD.

 
Grigori.S.B #:

Idealmente, deve-se também levar em conta a volatilidade dos instrumentos,
já que as qualidades de funcionamento do USDCHF são quase duas vezes menores que as do GBPUSD.

quando convertidos em uma base comum - o mesmo :-) O USDCHF e o USDGBP têm as mesmas porcentagens iguais

 
Maxim Kuznetsov #:

quando convertidos em uma base comum, eles são iguais :-) USDCHF e USDGBP têm as mesmas porcentagens iguais

Se for em porcentagem, então sim, eu concordo.

 
Roman #:

Calcule o rendimento.
Em seguida, aplique as fórmulas encontrando as fórmulas que faltam.
Sim, há matemática envolvida, mas não é complicado, e a mesma solução está disponível usando métodos diferentes.

Matemática em uma etapa.

Mas eu ainda não vi isso,

Não vi ninguém perceber qual é o método.

Portanto, pareceria muito estranho se eu lhe dissesse "direto ao ponto".

;))))

 

Aqui está o que eu tenho, critique-o.

   double lgS=MathLog(priceS);   // это продаём
   double lgB=MathLog(priceB);   // это покупаем
   double lgU=MathLog(1.0);      // через USD торгуем (const 0)
   // если пивот не дали, считаем сами
   if (pivot==0) {
      // равновесие, приблизительно средне-квадратичное
      double lgMin=MathMin(lgS,MathMin(lgB,lgU));
      double pivot=lgMin+MathSqrt((MathPow(lgS-lgMin,2.0)+MathPow(lgB-lgMin,2.0)+MathPow(lgU-lgMin,2.0))/3.0);
   }
   // амплитуды, у металлов вдвое выше
   double ampS=(SymbolInfoString(symS,SYMBOL_CURRENCY_BASE)=="XAU"||SymbolInfoString(symS,SYMBOL_CURRENCY_BASE)=="XAG")?2.0:1.0;
   double ampB=(SymbolInfoString(symB,SYMBOL_CURRENCY_BASE)=="XAU"||SymbolInfoString(symB,SYMBOL_CURRENCY_BASE)=="XAG")?2.0:1.0;
   // весовые коэфф.
   double weightS=1.0/(MathSqrt(MathAbs(pivot-lgS))+ampS);   // ?? 1.0/MathAbs(pivot-lgS)*ampS)
   double weightB=1.0/(MathSqrt(MathAbs(pivot-lgB))+ampB);
   // нормированные веса
   double normS=weightS/(weightS+weightB);
   double normB=weightB/(weightS+weightB);
   // инвест в продажу/покупку
   double investS=invest*normS;
   double investB=invest*normB;

o princípio do volume inversamente proporcional ao preço do registro é observado e os números são razoáveis.

A centralização e as amplitudes estão disponíveis. Não tenho certeza sobre o sqrt() em weightS.