Galera, estou desenvolvendo um robo para operar daytrade mini indice,
E como sabemos, podemos fazer a ordem de venda descoberta sem ter o papel.
No entanto quando programei aqui, percebei que o ele não vende, se eu tenho tenho o papel comprado na carteira, tem como eu forçar o mql vender sem eu ter o papel?
...
Boa tarde lml.lucas,
Você pode abrir tanto uma posição comprada como vendida no mini índice no MT5, e a forma para isso é exatamente a mesma, só muda o sentido da ordem.
Mas, em ambos os casos, deve especificar corretamente a ordem, e claro, o instrumento financeiro, independentemente de já ter ou não uma posição aberta dele.
Evidentemente, no daytrade, como você refere, espera-se que até o final do dia você tenha um algoritmo que encerre todas posições, o que vai evitar você 'dormir' vendido (ou comprado).
Portanto, acredito que teu maior problema seja justamente estar tratando de forma diferente a venda.
Sds.,
Rogério Figurelli
Certo,
Rogerio, obrigado pela resposta.
No entanto quando tento fazer o backteste, percebo que ele só faz compras, e as vendas ele deixa passar, percebi que é por que ele não consegue abrir uma posição e ficar com a carteira -1 por exemplo.
obs: Tenho o algorítimo que zera as posições no fim do dia, exatamente as 17:30, todas as posições zeram.
Certo,
Rogerio, obrigado pela resposta.
No entanto quando tento fazer o backteste, percebo que ele só faz compras, e as vendas ele deixa passar, percebi que é por que ele não consegue abrir uma posição e ficar com a carteira -1 por exemplo.
obs: Tenho o algorítimo que zera as posições no fim do dia, exatamente as 17:30, todas as posições zeram.
Então, pela mesma lógica, provavelmente sua ordem SELL está mal programada.
Por exemplo, tem certeza que o S/L e/ou T/P foram ajustados corretamente?
Outro ponto, ainda mais relevante, você está tratando as mensagens de retorno e verificando os possíveis erros de execução das ordens de venda?
Então, pela mesma lógica, provavelmente sua ordem SELL está mal programada.
Por exemplo, tem certeza que o S/L e/ou T/P foram ajustados corretamente?
Outro ponto, ainda mais relevante, você está tratando as mensagens de retorno e verificando os possíveis erros de execução das ordens de venda?
Vc tem razão Rogério.
Revisei o código e estava com erros.
Obrigado!
Vc tem razão Rogério.
Revisei o código e estava com erros.
Obrigado!
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Galera, estou desenvolvendo um robo para operar daytrade mini indice,
E como sabemos, podemos fazer a ordem de venda descoberta sem ter o papel.
No entanto quando programei aqui, percebei que o ele não vende, se eu tenho tenho o papel comprado na carteira, tem como eu forçar o mql vender sem eu ter o papel?
Segue o meu codigo de venda
if (comprovar_venda() == true) { //verifica se as condições do trade são passives de venda.
if (venda_aberta == true)
{ return; }
double mprice = NormalizeDouble(Msimbolo.Ask(), _Symbol);
double stloss = NormalizeDouble(Msimbolo.Ask() + Prejuiso, _Digits);
double takep = NormalizeDouble(Msimbolo.Ask() - Lucro, _Digits);
Mtrade.Sell(NumeroPapeis, _Symbol , mprice, (stloss), takep);
}