Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Oh cara, você é realmente uma estrela. Eu adoro negociar, mas seria impossível sem sua ajuda. Mais uma vez, obrigado.
Hi,
Alguém poderia me ajudar com minha função LotsizeCalc().
Eu gostaria de multiplicar meus lotes com o 'MartingaleAmount' se meu último negócio fosse um perdedor. Se meu último negócio fosse um vencedor, eu gostaria de usar o tamanho de lote 'normal'. Infelizmente, quando faço o backtest da EA, recebo o erro 4051 da revista.
Tem algo a ver com os lotes, porque a EA funciona quando tento executar a EA sem a função "LotsizeCalc()".
Alguém sabe por que minha função lotsize não funciona?
Agradecemos antecipadamente,
Thierry
extern int MaximumTrades = 10; extern double StopLoss=25; extern double TakeProfit=50; extern double MartingaleAmount = 1.5; input double LotSize=0.1; int magic; double pips; int tradeNumber; string ScreenComment; double martinlot; double martinsize;
[/PHP]
Thierry
Você pode usar esta função para descobrir se a última ordem fechada foi fechada com lucro ou prejuízo :
[dobro lastOrderProfit(int magicNumber=0)
{
data/hora últimaTempo = 0;
últimoLucro duplo = 0;
for(int i=OrdensHistóriaTotal()-1; i>=0; i--)
{
se (OrderSelect(i,SELECT_BY_POS, MODE_HISTORY)===falso) quebra;
if (magicNumber!=0)
se (OrderMagicNumber() != magicNumber) continuar;
se (OrderSymbol() != Symbol()) continuar;
if (OrderCloseTime() <= lastTime) continue;
lastTime = OrderCloseTime();
lastProfit = OrderProfit()+OrderSwap()+OrderComission();
}
return(lastProfit);
}
Basta verificar se o resultado da função lastOrderProfit(), e se for < 0, então aplique sua regra de martingale
Olá Mladen! Eu novamente...
Como seria possível usar as linhas deste indicador em uma EA usando iCustom, já que não parece haver nenhum amortecedor definido para estas linhas?
Obrigado
Olá Mladen! Eu novamente...
Como seria possível utilizar as linhas deste indicador em uma EA usando iCustom, já que não parece haver nenhum amortecedor definido para estas linhas?
ObrigadoEsses são objetos
Você pode acessar objetos pelo nome (você deve saber o nome exato do objeto, mas o indicador deve estar ativo no gráfico e esses objetos devem ser desenhados no gráfico).
Esses são objetos Você pode acessar objetos pelo nome (você deve saber o nome exato do objeto, mas o indicador deve estar ativo no gráfico e esses objetos devem ser desenhados no gráfico).
Ótimo. Então, como eu chamaria o indicador da EA? Com algo diferente do iCustom ou tenho tudo errado... Obrigado mladen
Ótimo. Então, como eu chamaria o indicador da EA? Com algo diferente do iCustom ou tenho tudo errado... Obrigado mladen
Esse indicador simplesmente desenha níveis a 0,20,50,80 pips de cada segmento de 100 pips. A maneira mais simples é verificar se esses níveis são cruzados a partir de sua EA.
Se você tentar usar nomes de objetos (e seus preços, você não será capaz de saber os nomes exatos das linhas, uma vez que elas dependem do mais alto alto e do mais baixo - elas são objeto de mudança. Use o modo descrito acima
Esse indicador simplesmente desenha níveis a 0,20,50,80 pips de cada segmento de 100 pips. A maneira mais simples é verificar se esses níveis são cruzados a partir de sua EA. Se você tentar usar nomes de objetos (e seus preços, você não será capaz de saber os nomes exatos das linhas, uma vez que elas dependem da maior alta e da menor baixa - elas estão sujeitas a mudanças. Use o modo descrito acima
Você teria um exemplo de como fazer isso... Desculpe-me por perguntar tanto, só estou começando com a codificação e não tenho o jeito de verificar se esses níveis estão cruzados na condição de comprar ou vender.
Você teria um exemplo de como fazer isso... Desculpe-me por perguntar tanto, só estou começando com a codificação e não tenho o jeito de verificar se esses níveis estão cruzados na condição de comprar ou vender.
Jason2005
Você tem um código de como ele é feito no indicador que você anexou
Jason2005 Você tem um código de como ele é feito no indicador que você anexou
Seria isto então?
Thierry
Você pode usar esta função para descobrir se a última ordem fechada foi fechada com lucro ou prejuízo :
{
datetime lastTime = 0;
double lastProfit = 0;
for(int i=OrdersHistoryTotal()-1; i>=0; i--)
{
if (OrderSelect(i,SELECT_BY_POS, MODE_HISTORY)==false) break;
if (magicNumber!=0)
if (OrderMagicNumber() != magicNumber) continue;
if (OrderSymbol() != Symbol()) continue;
if (OrderCloseTime() <= lastTime) continue;
lastTime = OrderCloseTime();
lastProfit = OrderProfit()+OrderSwap()+OrderCommission();
}
return(lastProfit);
}
Olá Mladen,
Obrigado por sua resposta.
A função lastorderprofit não é necessária porque minha função lastTradeTicket() faz o mesmo trabalho.
Você poderia por favor dar uma olhada em meu EA?
Não estou lhe pedindo para editar o código, mas eu ficaria muito grato se você pudesse me dizer o que eu codifiquei errado.
Obrigado de antemão,
Thierry
53_martingale.mq4