Brave persone, aiutano con i consigli. Quando si testa un EA, i trade non si aprono nel log, errore 3: parametri sbagliati. Cosa ho fatto di sbagliato con le funzioni personalizzate?
ticket=OrderSend(Symbol(),OP_SELLSTOP,Lots,Prices_install(),3,0,0,NULL,MAGICNUMBER,0,clrGreen);
if(ticket>0)//проверка открытия позиции
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
Print("SELL ордер открыт:",OrderOpenPrice());
}
elsePrint("Ошибка открытия ордера SELL:",GetLastError());
}
return;
}
}
//+---------------------------------------------------------------------------+//| Условия модификации ордеров |//+---------------------------------------------------------------------------+if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
{
//--- длинная позиция открытаswitch(OrderType())
{
case OP_BUYSTOP:
if(NormalizeDouble(OrderOpenPrice()-Prices_install(),Digits)>0 && NormalizeDouble(Prices_install()-Bid,Digits)>0)
{
if(OrderModify(ticket,Prices_install(),0,0,0,clrBlue))
Print("Цена Price_BUY ордера успешно модифицирована.");
elsePrint("Ошибка модификации ордера BUYStop. Код ошибки=",GetLastError());
}
elsePrint("Цена модификации выше цены ордера");
break;
case OP_SELLSTOP:
if(NormalizeDouble(Prices_install()-OrderOpenPrice(),Digits)>0 && NormalizeDouble(Ask-Prices_install(),Digits)>0)
{
if(OrderModify(ticket,Prices_install(),0,0,0,clrGreen))
Print("Цена Price_SELL ордера успешно модифицирована.");
elsePrint("Ошибка модификации ордера SELLStop. Код ошибки=",GetLastError());
}
elsePrint("Цена модификации выше цены ордера");
break;
case OP_BUY:
if(NormalizeDouble(StopLosse_install()-OrderStopLoss(),Digits)>0 && NormalizeDouble(Ask-StopLosse_install(),Digits)>0)
{
if(OrderModify(ticket,OrderOpenPrice(),StopLosse_install(),0,0,clrBlue))
Print("Цена Price_BUY ордера успешно модифицирована.");
elsePrint("Ошибка модификации ордера BUY. Код ошибки=",GetLastError());
}
elsePrint("Цена модификации выше цены ордера");
break;
case OP_SELL:
if(NormalizeDouble(OrderStopLoss()-StopLosse_install(),Digits)>0 && NormalizeDouble(StopLosse_install()-Bid,Digits)>0)
{
if(OrderModify(ticket,OrderOpenPrice(),StopLosse_install(),0,0,clrGreen))
Print("Цена Price_SELL ордера успешно модифицирована.");
elsePrint("Ошибка модификации ордера SELL. Код ошибки=",GetLastError());
}
elsePrint("Цена модификации выше цены ордера");
break;
}
}
}
Sleep(5);
}
return;
}
//+------------------------------------------------------------------+double StopLosse_install()
{
double StopLoss=iSAR(NULL,PERIODs_short_term,Step,Maximum,1);
double StopLoss_install;
int StopLevel=(int)MarketInfo(Symbol(),MODE_STOPLEVEL); // Минимально допустимый уровень стоп-лосса/тейк-профита в пунктахint FreezeLevel=(int)MarketInfo(Symbol(),MODE_FREEZELEVEL);//Уровень заморозки ордеров в пунктахswitch(OrderType())
{
case0:
if(Bid-StopLoss>FreezeLevel)
{
if(Bid-StopLoss>=StopLevel)
StopLoss_install=NormalizeDouble(StopLoss,Digits);
if(Bid-StopLoss<StopLevel)
StopLoss_install=NormalizeDouble(StopLoss-StopLevel*MarketInfo(Symbol(),MODE_DIGITS),Digits);
}
elsePrint("Цена открытия ордера находится в дистанции заморозки:",GetLastError());
break;
case1:
if(StopLoss-Ask>FreezeLevel)
{
if(StopLoss-Ask>=StopLevel)
StopLoss_install=NormalizeDouble(StopLoss,Digits);
if(StopLoss-Ask<StopLevel)
StopLoss_install=NormalizeDouble(StopLoss+StopLevel*MarketInfo(Symbol(),MODE_DIGITS),Digits);
}
elsePrint("Цена открытия ордера находится в дистанции заморозки:",GetLastError());
break;
}
return(StopLoss_install);
}
//+------------------------------------------------------------------+double Prices_install()
{
double Price=iSAR(NULL,PERIODs_short_term,Step,Maximum,1);
double Price_install;
int StopLevel=(int)MarketInfo(Symbol(),MODE_STOPLEVEL); // Минимально допустимый уровень стоп-лосса/тейк-профита в пунктахint FreezeLevel=(int)MarketInfo(Symbol(),MODE_FREEZELEVEL);//Уровень заморозки ордеров в пунктахswitch(OrderType())
{
case4:
if(Price-Ask>FreezeLevel)
{
if(Price - Ask>=StopLevel)
Price_install=NormalizeDouble(Price,Digits);
if(Price - Ask<StopLevel)
Price_install=NormalizeDouble(Price+StopLevel*MarketInfo(Symbol(),MODE_DIGITS),Digits);
}
elsePrint("Цена открытия ордера находится в дистанции заморозки:",GetLastError());
break;
case5:
if(Bid-Price>FreezeLevel)
{
if(Bid-Price>=StopLevel)
Price_install=NormalizeDouble(Price,Digits);
if(Bid-Price<StopLevel)
Price_install=NormalizeDouble(Price+StopLevel*MarketInfo(Symbol(),MODE_DIGITS),Digits);
}
elsePrint("Цена открытия ордера находится в дистанции заморозки:",GetLastError());
break;
}
return(Price_install);
}
//+------------------------------------------------------------------+
Quali sono le sfumature dell'uso dei loop nel prendere decisioni di trading da parte dell'Expert Advisor? Approssimativamente, se ci sono 20 livelli di supporto/resistenza, l'EA funzionerà correttamente se controlliamo tutti i livelli usando for ? O è meglio prendere quelli più vicini e farlo attraverso se?
Puoi dirmi come collegare i grafici di Statemnt? Per visualizzare un grafico del trading multivaluta. L'ho visto da qualche parte per molto tempo, ma non riesco a trovarlo
В настоящее время мультивалютных торговых систем, индикаторов и экспертов разработано огромное количество. Тем не менее, до сих пор создатели этого "огромного количества" сталкивались со специфическими для мультивалютных систем трудностями. С выпуском в свет терминала MetaTrader 5 и языка программирования MQL5 появилась возможность реализации...
Brave persone, aiutano con i consigli. Quando si testa un EA, i trade non si aprono nel log, errore 3: parametri sbagliati. Cosa ho fatto di sbagliato con le funzioni personalizzate?
Buon pomeriggio aiuto su parabolica per favore! Voglio fare la logica con l'Expert Advisor come mostrato nell'immagine:
Scrivo il codice in questo modo:
Vedi se ho fatto qualche errore, perché si blocca ..... Grazie mille!
Che tipo di deposito dovrei avere per fare un profitto di 100 dollari al giorno?
100 sterline al giorno e avere 0 drawdown?
Di che tipo di deposito avrei bisogno per fare un profitto di 100 dollari al giorno?
Deposito di 10 dollari! Ottieni il 1000% al giorno e ritira un profitto di 100 dollari al giorno!
Come posso aprire un conto demo con il mio nome utente e password di investitore su MT4?
Un server è ancora necessario
Per favore consigliate come fare in modo che su mt4/5 le barre non mostrino le aperture. L'unica cosa che mostraè la chiusura del bar.