[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 447
а почему как функция не работает а в старте работает?
In effetti, questa è una funzione solo dipende da ciò che è if(Close_){ - si applica all'interno dell'inizio, if void Close_() { come una funzione che funziona fuori dall'inizio.
È un Matsimple standard. Sto solo cercando di capire perché non si chiude correttamente. Sto provando la logica di chiusura dei trade. Una parte consiste in RSI, ecco perché non funziona.
Rispettati guru! Per favore, non lasciate che passi inosservato.
Ho comprato un portatile HP con Windows Vista preinstallatocon sistema operativo a 64 bit. Ha iniziato ad avere problemi con il lavoro dell'EA. All'inizio i miei accordi sono stati aperti in qualche modo. Ma in una settimana il mio Expert Advisor ha smesso di aprire completamente alcune operazioni. Abbiamo provato e rigirato e alla fine abbiamo deciso che il problema era causato dai 64 bit. L'abbiamo reinstallato e installato 32 bit e 7 Windows. Ha funzionato bene per un giorno e poi non funziona più. Forse ho qualche tipo di aggiornamento di Windows che lo sta influenzando?
Su altri computer (colleghi), l'EA funziona senza alcuna interruzione. Il mio vecchio portatile è andato e non posso comprare nulla al momento.
A proposito, sto lavorando sulla piattaforma Instatrader.
Per favore, se qualcuno ha incontrato o ha qualche suggerimento su come questo può essere risolto, si prega di avvisare.
Aiutatemi a rifare un semplice EA, sto lottando da una settimana!!!! Oppure scrivilo di nuovo, tutti gli EA sono troppo complicati e non posso modificarlo per me!
Voglio aggiungere a questo EA un indicatore MACD, che invia i suoi segnali BUY e SELL e l'EA deve fare entrambi allo stesso tempo. Non ci dovrebbero essere più di tre ordini di acquisto aperti e tre ordini di vendita aperti. Tutti gli ordini dovrebbero essere chiusi solo da stoploss e takeprofit, e non dalla forza dell'Expert Advisor.
//--------------------------------------------------------------------externint period_EMA =28,
period_WMA =8,
stoploss =50,
takeprofit =50,
risk =10;double LOT;//--------------------------------------------------------------------double SL, TP;int TimeBar;//глобальная переменная//--------------------------------------------------------------------int start(){if( TimeBar==Time[0])return(0);if( TimeBar==0){ TimeBar=Time[0];return(0);}//первый запуск программыdouble EMA0 =iMA(NULL,0, period_EMA,0,MODE_EMA,PRICE_OPEN,0);double WMA0 =iMA(NULL,0, period_WMA,0,MODE_LWMA,PRICE_OPEN,0);double EMA1 =iMA(NULL,0, period_EMA,0,MODE_EMA,PRICE_OPEN,1);double WMA1 =iMA(NULL,0, period_WMA,0,MODE_LWMA,PRICE_OPEN,1);if( EMA0< WMA0&& EMA1> WMA1)//Buy{
TimeBar=Time[0];
TP =Ask+ takeprofit*Point;
SL =Ask- stoploss*Point;
LOT = LOT( risk,1);
CLOSEORDER("Sell");
OPENORDER ("Buy");}if( EMA0> WMA0&& EMA1< WMA1)//Sell{
TimeBar=Time[0];
TP =Bid- takeprofit*Point;
SL =Bid+ stoploss*Point;
LOT = LOT( risk,1);
CLOSEORDER("Buy");
OPENORDER ("Sell");}return(0);}//--------------------------------------------------------------------void CLOSEORDER(string ord){for(int i=OrdersTotal()-1; i>=0; i--){if(OrderSelect( i, SELECT_BY_POS, MODE_TRADES)==true){if(OrderSymbol()!=Symbol())continue;if(OrderType()==OP_BUY&& ord=="Buy")OrderClose(OrderTicket(),OrderLots(),Bid,3,CLR_NONE);// Close Buyif(OrderType()==OP_SELL&& ord=="Sell")OrderClose(OrderTicket(),OrderLots(),Ask,3,CLR_NONE);// Close Sell}}}//--------------------------------------------------------------------void OPENORDER(string ord){int error;if( ord=="Buy") error=OrderSend(Symbol(),OP_BUY, LOT,Ask,2, SL, TP,"",1,3);if( ord=="Sell") error=OrderSend(Symbol(),OP_SELL, LOT,Bid,2, SL, TP,"",-1,3);if( error==-1)//неудачная покупка OK{
ShowERROR( error,0,0);}return;}//--------------------------------------------------------------------void ShowERROR(int Ticket,double SL,double TP){int err=GetLastError();switch( err ){case1:return;case2:Alert("Нет связи с торговым сервером ", Ticket," ",Symbol());return;case3:Alert("Error неправильные параметры Ticket ", Ticket," ",Symbol());return;case130:Alert("Error близкие стопы Ticket ", Ticket," ",Symbol());return;case134:Alert("Недостаточно денег ", Ticket," ",Symbol());return;case146:Alert("Error Подсистема торговли занята ", Ticket," ",Symbol());return;case129:Alert("Error Неправильная цена ", Ticket," ",Symbol());return;case131:Alert("Error Неправильный объем ", Ticket," ",Symbol());return;case4051:Alert("Error Недопустимое значение параметра функции ", Ticket," ",Symbol());return;case4105:Alert("Error Ни один ордер не выбран ", Ticket," ",Symbol());return;case4063:Alert("Error Ожидается параметр типа integer ", Ticket," ",Symbol());return;case4200:Alert("Error Объект уже существует ", Ticket," ",Symbol());return;default:Alert("Error ", err," Ticket ", Ticket," ",Symbol());return;}}//--------------------------------------------------------------------double LOT(int risk,int ord){double MINLOT =MarketInfo(Symbol(),MODE_MINLOT);
LOT =AccountFreeMargin()* risk/100/MarketInfo(Symbol(),MODE_MARGINREQUIRED)/ ord;if( LOT>MarketInfo(Symbol(),MODE_MAXLOT)) LOT =MarketInfo(Symbol(),MODE_MAXLOT);if( LOT< MINLOT) LOT = MINLOT;if( MINLOT<0.1) LOT =NormalizeDouble( LOT,2);else LOT =NormalizeDouble( LOT,1);return( LOT);}//--------------------------------------------------------------------
Помогите переделать простой советник, бьюсь неделю!!!! Или написать снова, а то все советники слишком сложные и я их не могу под себя подстроить!!
Суть такая: Хочу добавить в этот советник( торгующий на пересечении) ещё индикатор MACD, который подает свой сигнал на продажу и покупку и советник должен параллельно выполнять их. Открытых ордеров BUY не больше трех и SELL тоже трех. Все ордера должны закрываться только по stoploss и takeprofit, а не принудительно советником.
Tutto è chiaro con questo, ma come si impostano gli ordini? Nella versione originale, per esempio, impostiamo Buy, e quando un segnale Sell viene ricevuto, Buy viene chiuso e Sell viene impostato! E non ho bisogno di chiudere, l'Expert Advisor dovrebbe impostare ordini con stop e basta!
Ho una domanda, o meglio una richiesta, sullo stesso EA EMA_WMA.mq4 e anche per quanto riguarda la chiusura. È possibile invece di chiudere per TakeProfit o in aggiunta a questo aggiungere la possibilità di chiudere un ordine per valore massimo/minimo della MA. Mi sembra che questo sarebbe il modo migliore per uscire dal mercato (anche se potrei sbagliarmi, ovviamente). Si prega di aggiungere questa funzione a questo EA.
Un'altra piccola domanda, ricevo un messaggio come questo: "Errore. Stops close", anche se il mio stop loss è impostato a 50 pips (MasterForex). Cosa significa?
а почему как функция не работает а в старте работает?
In effetti, questa è una funzione solo dipende da ciò che è if(Close_){ - si applica all'interno dell'inizio, if void Close_() { come una funzione che funziona fuori dall'inizio.
алгоритм у вас верный. сделайте распринтовку возможных ошибок и вообще ухзнать куда доходит эксперт при выполнении этого кода.
+ выведите расчитанные значения рси.
)))) Penso che il ragazzo abbia un errore nel codice ..... anche se sono un novellino, potrei sbagliarmi.
È un Matsimple standard. Sto solo cercando di capire perché non si chiude correttamente. Sto provando la logica di chiusura dei trade. Una parte consiste in RSI, ecco perché non funziona.
Cambiato lo shifft dopo la stampa.
Per favore, non lasciate che passi inosservato.
Ho comprato un portatile HP con Windows Vista preinstallatocon sistema operativo a 64 bit.
Ha iniziato ad avere problemi con il lavoro dell'EA. All'inizio i miei accordi sono stati aperti in qualche modo. Ma in una settimana il mio Expert Advisor ha smesso di aprire completamente alcune operazioni. Abbiamo provato e rigirato e alla fine abbiamo deciso che il problema era causato dai 64 bit. L'abbiamo reinstallato e installato 32 bit e 7 Windows. Ha funzionato bene per un giorno e poi non funziona più. Forse ho qualche tipo di aggiornamento di Windows che lo sta influenzando?
Su altri computer (colleghi), l'EA funziona senza alcuna interruzione. Il mio vecchio portatile è andato e non posso comprare nulla al momento.
A proposito, sto lavorando sulla piattaforma Instatrader.
Per favore, se qualcuno ha incontrato o ha qualche suggerimento su come questo può essere risolto, si prega di avvisare.
Aiutatemi a rifare un semplice EA, sto lottando da una settimana!!!! Oppure scrivilo di nuovo, tutti gli EA sono troppo complicati e non posso modificarlo per me!
Voglio aggiungere a questo EA un indicatore MACD, che invia i suoi segnali BUY e SELL e l'EA deve fare entrambi allo stesso tempo. Non ci dovrebbero essere più di tre ordini di acquisto aperti e tre ordini di vendita aperti. Tutti gli ordini dovrebbero essere chiusi solo da stoploss e takeprofit, e non dalla forza dell'Expert Advisor.
Помогите переделать простой советник, бьюсь неделю!!!! Или написать снова, а то все советники слишком сложные и я их не могу под себя подстроить!!
Суть такая: Хочу добавить в этот советник( торгующий на пересечении) ещё индикатор MACD, который подает свой сигнал на продажу и покупку и советник должен параллельно выполнять их. Открытых ордеров BUY не больше трех и SELL тоже трех. Все ордера должны закрываться только по stoploss и takeprofit, а не принудительно советником.
Ho una domanda, o meglio una richiesta, sullo stesso EA EMA_WMA.mq4 e anche per quanto riguarda la chiusura. È possibile invece di chiudere per Take Profit o in aggiunta a questo aggiungere la possibilità di chiudere un ordine per valore massimo/minimo della MA. Mi sembra che questo sarebbe il modo migliore per uscire dal mercato (anche se potrei sbagliarmi, ovviamente). Si prega di aggiungere questa funzione a questo EA.
Un'altra piccola domanda, ricevo un messaggio come questo: "Errore. Stops close", anche se il mio stop loss è impostato a 50 pips (MasterForex). Cosa significa?