Discussão do artigo "Exemplo de desenvolvimento de uma estratégia de spread nos futuros da MICEX-RTS" - página 4

 

O exemplo Si - RTS não foi muito bem escolhido, porque o RTS não depende proporcionalmente de Si,

MIX(MXI) pode ter uma grande influência sobre RTS, porque RTS é um reflexo do índice MICEX em moeda.

É muito mais interessante considerar SBRF - SBPR futuros diferentes para o mesmo ativo.

Adicionado

Ou considerar RTS VS MIX sem levar em conta o hedging Si, porque nem todo o contrato RTS é recalculado na compensação, e

apenas a diferença entre o preço de compra e o preço de compensação.

MIX = RTS * USD_INDEX * LOT_RTS = 10 * 0,02

Apenas os saltos do USD_INDEX podem ser o motivo da realização de lucros, e não o contrário.

Adicionado

Nota sobre a implementação (Strategy4_SpreadDeltaPercent_EA.mq5)

É necessário trabalhar não com barras, mas com pilhas.

//+------------------------------------------------------------------+
//| Função do evento Expert Book|
//+------------------------------------------------------------------+
void OnBookEvent(const string &symbol)
{
  if((symbol == Symbol()) || (symbol == sec_symbol))
  {
  }
}

A primeira posição deve ser aberta não pelo mercado,

bool BuyAndSell(string sym1,string sym2,double lot1,double lot2)
  {
//--- compra e venda
   trade.Buy(lot1,sym1);
   trade.Sell(lot2,sym2);
//---
   return true;
  }

mas com uma ordem de limite, se a posição for aberta.

abrir uma operação de balcão de acordo com o mercado

Não está claro onde e como o lote 1 e o lote 2 são calculados.

 
prostotrader:

A primeira posição não deve ser aberta no mercado,

bool BuyAndSell(string sym1,string sym2,double lot1,double lot2)
  {
//--- compra e venda
   trade.Buy(lot1,sym1);
   trade.Sell(lot2,sym2);
//---
   return true;
  }

mas com uma ordem de limite, se a posição for aberta, então

abriremos uma contraoperação no mercado

Gostaria de saber por que é assim - primeiro por ordem de limite, depois por mercado?
 
Dennis Kirichenko:
Eu me pergunto por que é assim - primeiro o limite, depois a marca?

Porque o vidro pode ser "descarregado".

O primeiro elemento do vidro é o volume 1 com um preço de 100, seguido pelo volume 99 com um preço de 500,

Comprando no mercado, estamos no vermelho,

e ao comprar com um limite, compramos ou não compramos pelo preço que queremos.

 
prostotrader:

Porque o copo pode ser "descarregado".

O primeiro elemento do copo é o volume 1 com um preço de 100, seguido pelo volume 99 com um preço de 500,

Comprando no mercado, vamos nos afundar,

e comprando no limite, ou compramos ou não compramos pelo preço que queremos.

Ótimo exemplo! Então, por que comprar no mercado e nem sempre no limite?
 
Dennis Kirichenko:
Ótimo exemplo! Então, por que marcar a mercado, e nem sempre limitar?

Uma operação de resposta deve ser executada o mais rápido possível com o volume total que foi usado para abrir a primeira posição.

Responder com uma operação de limite NÃO GARANTE o volume ou o fato da execução da operação.

 
prostotrader:

Uma operação de balcão deve ser executada o mais rápido possível com o volume total da primeira posição.

Uma resposta com uma negociação de limite NÃO GARANTE o volume.

Ah, desculpe, não entendi o termo "retaliatório". Obrigado. Muito bem observado o "limit-market", então. Respeito
 
prostotrader:

Não está claro onde e como o lote1 e o lote2 são calculados

Não é calculado em nenhum lugar, as limitações são descritas no próprio artigo em uma seção separada.
 
prostotrader:

O exemplo Si - RTS não foi muito bem escolhido, porque o RTS não depende proporcionalmente de Si,

MIX(MXI) pode ter uma grande influência sobre RTS, porque RTS é um reflexo do índice MICEX em moeda.

É muito mais interessante considerar SBRF - SBPR futuros diferentes para o mesmo ativo.

Adicionado

Ou considerar RTS VS MIX sem levar em conta o hedging Si, porque nem todo o contrato RTS é recalculado na compensação, e

apenas a diferença entre o preço de compra e o preço de compensação.

MIX = RTS * USD_INDEX * LOT_RTS = 10 * 0,02

Apenas os saltos do USD_INDEX podem ser o motivo da realização de lucros, e não o contrário.

Obrigado pelos comentários, isso é de interesse de todos.
 

Como posso obter a estatística F e o valor p do modelo reg construído por meio do alglib? Existem apenas AVGerr e RMSerr

 
Maxim Dmitrievsky:

Como posso obter a estatística F e o valor p do modelo reg construído por meio do alglib? Existem apenas AVGerr e RMSerr

Há um método estático para a estatística F na classe CAlglib:

//+------------------------------------------------------------------+
//| Teste F de duas amostras|
//| Esse teste verifica três hipóteses sobre as dispersões do dado
//| amostras. |
//| Parâmetros de entrada:|
//| X - amostra 1. Matriz cujo índice vai de 0 a N-1. ||
//| N - tamanho da amostra.|
//| Y - amostra 2. Matriz cujo índice vai de 0 a M-1.
//| M - tamanho da amostra.|
//| Parâmetros de saída:|
//| BothTails - valor de p para teste bicaudal.
//|Se BothTails for menor que o valor dado
//| nível de significância a hipótese nula é |
//| rejeitado.|
//| LeftTail - valor de p para teste de cauda esquerda.
//|Se LeftTail for menor que o valor dado
//| nível de significância, a hipótese nula é |
//| rejeitado.|
//| RightTail - valor de p para teste de cauda direita.
//|Se RightTail for menor que o valor dado
//| nível de significância a hipótese nula é |
//| rejeitado.|
//+------------------------------------------------------------------+
static void CAlglib::FTest(const double &x[],const int n,const double &y[],
                           const int m,double &bothTails,double &leftTail,
                           double &rightTail)