Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1601 1...159415951596159715981599160016011602160316041605160616071608...1953 Novo comentário Tretyakov Rostyslav 2021.08.25 12:40 #16001 PapaYozh:Este vai do índice zero, ou seja, desde o início. Estou confuso...você está absolutamente certo! законопослушный гражданин 2021.08.25 17:15 #16002 PapaYozh:Esta busca a partir do índice zero, ou seja, desde o início. PapaYozh: Este vai desde o índice zero, ou seja, desde o início. Ahh.... Agora tudo isso faz sentido, obrigado. законопослушный гражданин 2021.08.26 12:41 #16003 Maxim Kuznetsov: 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? Maxim Kuznetsov 2021.08.26 12:49 #16004 законопослушный гражданин: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" законопослушный гражданин 2021.08.26 13:11 #16005 Maxim Kuznetsov:! - é uma negação booleana, NÃO se { !OrderSelect() } traduzido como "se NÃO tiver sucesso OrderSelect". ! obrigado законопослушный гражданин 2021.08.26 13:31 #16006 Maxim Kuznetsov: 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? Qualquer pergunta de novato, Erros, bugs, perguntas Perguntas de um "boneco" Maxim Kuznetsov 2021.08.26 13:37 #16007 законопослушный гражданин: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 законопослушный гражданин 2021.08.26 13:47 #16008 Maxim Kuznetsov: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 законопослушный гражданин 2021.08.26 14:08 #16009 законопослушный гражданин: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á? Perguntas de Iniciantes MQL4 Discussão do artigo "Usar [ARQUIVO]Qualquer pergunta de novato, Tretyakov Rostyslav 2021.08.26 14:12 #16010 Alguma dica de como lidar com isso? No testador da história, uma simples abertura de ordem às vezes causa um erro. OrderSend(_Symbol,OP_SELL,0.5,Bid,0,0,0,NULL,0) 2021.08.26 14:56:33.375 2017.08.07 08:00:00 Trader EURUSD,H1: OrderSend error 3 ERR_INVALID_TRADE_PARAMETERS - que diabos é isto e o que significa? 1...159415951596159715981599160016011602160316041605160616071608...1953 Novo comentário
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?