Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 1147

 
Maxim Dmitrievsky:

a tarefa é tornar as duas peças indistinguíveis (os mesmos erros, etc.), neste contexto, a definição do que se agita perde todo o sentido

Na verdade, talvez você esteja certo, a experiência real só pode fornecer uma resposta objetiva em nosso ofício)

[Excluído]  
FxTrader562:

Está mostrando algum erro: " Função de entrega de evento não encontrada".

nenhum erro

[Excluído]  
FxTrader562:

sim

[Excluído]  
FxTrader562:

Na verdade, seria muito bom se pudesses fazer algumas mudanças aqui...

o que muda

[Excluído]  
FxTrader562:

Na verdade, seria ótimo se você pudesse mudar aqui:

Eu tentei isto... mas eu não sabia se tinha feito algo de errado:

Por favor veja o código e sugira se podemos fazer algo semelhante para melhorar a expectativa de pip por comércio

Melhor se você mudar aqui

//+------------------------------------------------------------------+
//|Get trade signal                                                  |
//+------------------------------------------------------------------+
double CRLAgent::getTradeSignal(double &featuresValues[])
  {
   if(!random_policy) {
      double kerfeatures[];
      ArrayResize(kerfeatures,ArrayRange(bestFeatures,0));
      ArrayInitialize(kerfeatures,0);
      
      for(int i=0;i<ArraySize(kerfeatures);i++) {
         kerfeatures[i] = featuresValues[0]/featuresValues[(int)bestFeatures[i][1]];
        }
            
      CLogit::MNLProcess(Lmodel,kerfeatures,Lout);
      return Lout[1];
     }
   else if(rand()/32767.0<0.5) return 0; else return 1;
  }

if(fast MA> slow MA)if(rand()/32767.0<0.8) return 0; else return 1;

if(fast MA< slow MA)if(rand()/32767.0<0.8) retorna 1; caso contrário retorna 0;

ou algo parecido com isto, qualquer indicador como filtro

 
Maxim Dmitrievsky:

Melhor se você mudar aqui

if (MA rápido > MA lento) if ( rand () / 32767.0 < 0.8 ) retorna 0 ; caso contrário retorna 1 ;

if (MA rápido < MA lento) if ( rand () / 32767.0 < 0.8 ) retorna 1 ;caso contrário retorna 0 ;

ou algo parecido com isto, qualquer indicador como filtro

Bem, eu tentei mudar aqui... mas estragar qualquer coisa com "Sinais" estraga os resultados todos...

[Excluído]  
FxTrader562:

Indicador que eu ainda não tentei...

mas eu tentei " se ( rand () / 32767.0 < 0.8 )"...t hen, ele mostrou comportamento aleatório, porque nós precisamos mudar aqui também:

se você filtrar isso com MA, significa que ele vai amostrar sinais de compra ou venda com probabilidade de 0,8 quando a tendência é para cima ou para baixo, então as negociações serão muito mais longas, não é necessário mudar o filtro de sinais

Vou pensar em como melhorar o func da recompensa. Amanhã )
 
Maxim Dmitrievsky:

Melhor se você mudar aqui

if(fast MA> slow MA)if(rand()/32767.0<0.8) return 0; else return 1;

if(fast MA< slow MA)if(rand()/32767.0<0.8) retorna 1; caso contrário retorna 0;

ou algo parecido com isto, qualquer indicador como filtro

parece fazer coisas semelhantes (ou chegar a conclusões semelhantes)

Aproximadamente "se os algoritmos determinísticos perdem quando há falta de informação (num mercado em melhoria), então podemos deixar que as probabilidades façam o trabalho" :-)

[Excluído]  
Maxim Kuznetsov:

parecem fazer coisas semelhantes (ou chegar a conclusões semelhantes)

Estamos falando de "se os algoritmos determinísticos perdem em condições de falta de informação (em um mercado em melhoria), então podemos deixar as probabilidades fazerem o trabalho" :-)

um pouco diferente aqui (preparação de dados marcados para treinamento NS), mas parece que sim

a questão é como melhor marcar os dados de uma forma pseudo-aleatória

[Excluído]  
FxTrader562:

Ok, vamos ver...)

Na verdade, estou a obter resultados bastante impressionantes nos testes anteriores até agora:))

Mas o principal problema com os testes futuros:((((

talvez nunca funcione bem :)