Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1601
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
Este vai do índice zero, ou seja, desde o início.
Esta busca a partir do índice zero, ou seja, desde o início.
Este vai desde o índice zero, ou seja, desde o início.
Ahh.... Agora tudo isso faz sentido, obrigado.
for(int i=OrdersTotal()-1;i>=0;i--) {
if (! OrderSelect(i,SELECT_BY_POSITON,MODE_TRADES)) continue;
double prosad=DBL_MIN;
if (OrderType()!=OP_BUY && OrderType!=OP_SELL) continue;
for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1); j>=0;j--) {
double delta=( OrderType()==OP_BUY? OrderOpenPrice()-iLow(OrderSymbol(),PERIOD_M1,j) : iHigh(OrderSymbol(),PERIOD_M1,j)-OrderOpenPrice() );
delta /= MarketInfo(OrderSymbol(),MODE_POINT);
if (delta>prosad) prosad=delta;
}
PrintFormat("Максимальная просадка по ордеру %d = %d пунктов , %f денег",OrderTicket(),(int)(prosad),prosad*OrderLots()*MarketInfo(OrderSymbol(),MODE_TICKVALUE);
}
escrito "à mão", não testado, cheio de erros :-) ajuste-o às suas necessidades e use-o
por favor me diga o que -"!" significa em seu código ?
eu ainda não entendo muito bem
ou talvez alguém mais possa me explicar, além do autor?
por favor me diga, o que significa -"!" em seu código?
Eu ainda não entendo bem.
ou alguém mais pode me explicar isso além do autor?
! - esta é uma negação booleana, NÃO
se { !OrderSelect() } traduzido para "se OrderSelect NÃO for bem sucedido".
!= respectivamente "NÃO igual"
! - é uma negação booleana, NÃO
se { !OrderSelect() } traduzido como "se NÃO tiver sucesso OrderSelect".
!
obrigado
for(int i=OrdersTotal()-1;i>=0;i--) {
if (!OrderSelect(i,SELECT_BY_POSITON,MODE_TRADES)) continue;
double prosad=DBL_MIN;
if (OrderType()!=OP_BUY && OrderType!=OP_SELL) continue;
for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1); j>=0;j--) {
double delta=( OrderType()==OP_BUY? OrderOpenPrice()-iLow(OrderSymbol(),PERIOD_M1,j) : iHigh(OrderSymbol(),PERIOD_M1,j)-OrderOpenPrice() );
delta /= MarketInfo(OrderSymbol(),MODE_POINT);
if (delta>prosad) prosad=delta;
}
PrintFormat("Максимальная просадка по ордеру %d = %d пунктов , %f денег",OrderTicket(),(int)(prosad),prosad*OrderLots()*MarketInfo(OrderSymbol(),MODE_TICKVALUE);
}
escrito "à mão", não verificado, tem muitos erros :-) ajuste-o às suas necessidades e use-o
Eu posso ter "limpo" o código, mas esta linha mostra um aviso para(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1); j>=0;j--)
possível perda de dados devido à conversão do tipo
Não consegue descobrir o que está errado?
Eu pareço ter "limpo" o código, mas nesta linha para(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1); j>=0;j--) o aviso aparece:
possível perda de dados devido à conversão do tipo
Eu não consigo descobrir o que está errado?
Misturei os parâmetros... é uma confusão comum quando está escrito "on the fly" direto para o fórum contornando o terminal
iBarShift(OrderSymbol(),PERÍODO_M1,OrderOpenTime()) deve ser
Parâmetros misturados...confusão comum ao escrever "on the fly" diretamente no fórum contornando o terminal
iBarShift(OrderSymbol(),PERÍODO_M1,OrderOpenTime()) deve ser
obrigado
Eu pareço ter "limpo" o código, mas nesta linha para(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1); j>=0;j--) o aviso aparece:
possível perda de dados devido à conversão do tipo
Eu não consigo descobrir o que está errado?
Não consigo realmente entender o que está errado? Posso anexar toda esta "coisa" ao meu consultor especializado e fazer o teste de estratégia com a saída das informações no relatório do teste?
funcionará?
Alguma dica de como lidar com isso?
No testador da história, uma simples abertura de ordem às vezes causa um erro.
ERR_INVALID_TRADE_PARAMETERS - que diabos é isto e o que significa?