Abordamos o tema de automatização de estratégias em NTSL, MQL5 e NinjaScript!
Olá,
Estou iniciando na programação e estou desenvolvendo um simples robô, porém ao executar no módulo de automação, diversas ordens de compra ou venda não são executadas, ocasionando nos erros abaixo:
Compra: "Não foi possível criar BuyStop. Sua ordem stop deve ter o preço acima do preço atual do mercado"
Venda: "Não foi possível criar SellStop. Sua ordem stop deve ter o preço abaixo do preço atual do mercado".
Tentei uma variação no robô de +5 ao invés do incremento mínimo para ver se as ordens eram executadas, mas não deu certo. As ordens "ToCoverStop" funcionam corretamente, apenas as ordens de entrada, seja compra ou venda, que as vezes dão erro.
Poderiam me ajudar a identificar o problema e corrigi-lo?
Código:
input offset(30); var sinalCompra,sinalVenda : boolean; stopCompra,stopVenda : float; begin // SINAIS DE ENTRADA sinalCompra := (close[0] > close[1]); sinalVenda := (close[0] < close[1]); // EXECUÇÃO DA ENTRADA if ( not HasPosition) and sinalCompra then BuyStop((High[0]+MinPriceIncrement),(High[0]+MinPriceIncrement) + (offset * MinPriceIncrement)); // Variação 1 BuyStop((High[0]+5),(High[0]+MinPriceIncrement) + (offset * MinPriceIncrement)); // Variação 2 if ( not HasPosition) and sinalVenda then SellShortStop((Low[0]-MinPriceIncrement),(High[0]+MinPriceIncrement) + (offset * MinPriceIncrement)); // Variação 1 SellShortStop((Low[0]-5),(Low[0]-MinPriceIncrement) - (offset * MinPriceIncrement)); // Variação 2 // EXECUÇÃO DA SAÍDA stopCompra := Low[0]; stopVenda := High[0]; if IsBought then SellToCoverStop(stopCompra,stopCompra - (offset * MinPriceIncrement)); if IsSold then BuyToCoverStop(stopVenda,stopVenda + (offset * MinPriceIncrement)); end;
Obrigado!
Boa noite @crismiguel!
Melhor do que corrigir o seu código, irei lhe passar algumas informações relevantes para que proceda você mesmo os ajustes necessários. Pois vejo que há uma lacuna a ser preenchida em relação a alguns conceitos importantes.
Aprender a desenvolver código de estratégias automatizadas exige percorrer uma trilha de aprendizagem de maneira a adquirir conhecimento dos principais conceitos envolvidos. Tem muito material gratuito e de qualidade na Comunidade NeoTraderBot...por outro lado, eu vejo muito material desinformativo por aí.
É possível aprender por meio de vídeos no youtube, e o site da NeoTraderBot tem uma base de conhecimento que você não encontrará em outro lugar.
Mas eu acredito que realizar o curso de Automatização de Trading em NTSL da Comunidade NeoTraderBot é a maneira mais eficiente de você aprender a criar suas estratégias em NTSL. Dê uma olhada neste link e avalie essa possibilidade...É como dizem: Tempo é dinheiro! O curso vai te levar da maneira mais rápida e objetiva ao patamar de autosuficiência em programação.
Grande abs!