Ho attaccato una martingala. A metà giornata ho attaccato l'Expert Advisor in questa forma (aveva già fatto qualche affare dello stesso EA, ma in uno stato incompiuto prima), - l'EA ha funzionato bene, la martingala ha funzionato, ha tolto le perdite per mezza giornata in più. Il giorno dopo, ho acceso la piattaforma al mattino, sono andato a lavorare, la sera - un affare. La martingala aumenta il lotto per un trade perdente, altrimenti - il lotto standard.
voidOnTick()
{
datetime EaStartTime = StringToTime(StartTime); // время начала работы советникаdatetime EaEndTime = StringToTime(EndTime); // время окончания работы советникаdatetime CurrTime = TimeCurrent(); // это если нужно взять время терминалаif(CurrTime<EaStartTime || CurrTime>=EaEndTime)
return; // если еще не время торговать - выход
{
MacdCurrent=iMACD(NULL,0,InpFastEMA,InpSlowEMA,InpSignalSMA,Macd_Applied_Price,MODE_MAIN,0);
SignalCurrent=iMACD(NULL,0,InpFastEMA,InpSlowEMA,InpSignalSMA,Macd_Applied_Price,MODE_SIGNAL,0);
SignalMAPrevious=iMA(NULL,0,InpMAPeriod,InpMAShift,InpMAMethod,MA_Applied_Price,1);
SignalMAThis=iMA(NULL,0,InpMAPeriod,InpMAShift,InpMAMethod,MA_Applied_Price,0);
SignalParabolic=iSAR(NULL,0,InpSARStep,InpSARMaximum,0);
SignalStochastic_5=iStochastic(NULL,5,InpKPeriod,InpDPeriod,InpSlowing,MODE_SMA,0,1,0);
MainStochastic_5=iStochastic(NULL,5,InpKPeriod,InpDPeriod,InpSlowing,MODE_SMA,0,0,0);
SignalStochastic=iStochastic(NULL,0,InpKPeriod,InpDPeriod,InpSlowing,MODE_SMA,0,1,0);
MainStochastic=iStochastic(NULL,0,InpKPeriod,InpDPeriod,InpSlowing,MODE_SMA,0,0,0);
SignalCCIPrevious=iCCI(NULL,0,InpCCIPeriod,0,1);
SignalCCIThis=iCCI(NULL,0,InpCCIPeriod,0,0);
if(CountTrades()==0) CheckForOpen();
}
}
//+------------------------------------------------------------------+//| |//+------------------------------------------------------------------+void CheckForOpen()
{if(ModLots())
{
//-----Ставим ордер на покупку.if(SignalCurrent<MacdCurrent && SignalMAPrevious<SignalMAThis &&
Ask>SignalParabolic && SignalStochastic_5<MainStochastic_5&&SignalStochastic<MainStochastic&&
SignalCCIPrevious<SignalCCIThis)
{
ticket=OrderSend(NULL,OP_BUY,lot,Ask,slippage,0,0,exptime,magic,0,Blue);
if(ticket>0)
return;
}
//-----Ставим ордер на продажу.if(SignalCurrent>MacdCurrent && SignalMAPrevious>SignalMAThis &&
Bid<SignalParabolic && SignalStochastic_5>MainStochastic_5&&SignalStochastic>MainStochastic&&
SignalCCIPrevious>SignalCCIThis)
{
ticket=OrderSend(NULL,OP_SELL,lot,Bid,slippage,0,0,exptime,magic,0,Red);
if(ticket>0)
return;
}
}
}
//+------------------------------------------------------------------+int CountTrades()
{
int count=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic)
count++;
}
}
return(count);
}
//+------------------------------------------------------------------+bool ModLots()
{
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
{
if(!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) continue;
if((OrderMagicNumber()==magic) && (OrderSymbol()==Symbol()))
{
if(OrderProfit()<0)
{lot=OrderLots()*LotMarti; break;}
else { lot=Lots; break;}
}
}
return(true);
}
//+------------------------------------------------------------------+
Salve. Il manuale di mql4 dice che la gestione degli eventi Timer e ChartEvent non è supportata nello strategy tester. Di conseguenza, i pulsanti (OBJ_BUTTON) non funzionano (più precisamente, non succede nulla quando si clicca). La versione di prova di questo EA, tuttavia, per qualche motivo non supporta questa regola. Per favore, ditemi perché questo accade e come far funzionare i pulsanti nel tester?
Maks_Knyazev: Salve. Il manuale di mql4 dice che l'elaborazione degli eventi Timer e ChartEvent non è supportata nel tester delle strategie. Di conseguenza, i pulsanti (OBJ_BUTTON) non funzionano (più precisamente, non succede nulla quando si clicca). La versione di prova di questo EA, tuttavia, per qualche motivo non supporta questa regola. Per favore, ditemi perché questo accade e come far funzionare i pulsanti nel tester?
Sì, non funzionano. Dovete controllare i pulsanti manualmente nel tester, in questo modo
Salve. Non ha chiuso il profitto sulla candela 09-47 minuti su EURUSD il profitto era a 1.08428 la candela è andata a 1.08420. Cosa fare? Grazie in anticipo.
Salve. Non ha chiuso il profitto sulla candela 09-47 minuti su EURUSD il profitto era a 1.08428 la candela è andata a 1.08420. Cosa fare? Grazie in anticipo.
Dovresti prestare attenzione allo spread, perché le posizioni corte sono chiuse su Asc, mentre la candela è disegnata su Bid. Spread superiori a 8 pips per un cinque cifre è normale per la maggior parte delle coppie di valute.
Salve. Non ha chiuso il profitto sulla candela 09-47 minuti su EURUSD il profitto era a 1.08428 la candela è andata a 1.08420. Cosa fare? Grazie in anticipo.
Spunta le citazioni da scrivere. Devo mandarle il mio preventivo? Anche se ce ne sono molti in kodobaz. Avevi ragione sullo spread.
Salve. Il manuale di mql4 dice che l'elaborazione degli eventi Timer e ChartEvent non è supportata nel tester delle strategie. Di conseguenza, i pulsanti (OBJ_BUTTON) non funzionano (più precisamente, non succede nulla quando si clicca). La versione di prova di questo EA, tuttavia, per qualche motivo non supporta questa regola. Per favore, ditemi perché questo accade e come far funzionare i pulsanti nel tester?
Sì, non funzionano. Dovete controllare i pulsanti manualmente nel tester, in questo modo
Sì, non funzionano. Nel tester, dovete controllare i pulsanti manualmente, come questo
flint17480, 2016.02.01 08:58
Salve. Non ha chiuso il profitto sulla candela 09-47 minuti su EURUSD il profitto era a 1.08428 la candela è andata a 1.08420. Cosa fare? Grazie in anticipo.flint17480, 2016.02.01 08:58
Salve. Ho perso il mio profitto su EURUSD a 09-47, era a 1,08428 ed è salito a 1,08420. Puoi dirmi cosa fare? Grazie in anticipo.Hai bisogno di più informazioni:
flint17480, 2016.02.01 08:58
Salve. Non ha chiuso il profitto sulla candela 09-47 minuti su EURUSD il profitto era a 1.08428 la candela è andata a 1.08420. Cosa fare? Grazie in anticipo.Dovresti prestare attenzione allo spread, perché le posizioni corte sono chiuse su Asc, mentre la candela è disegnata su Bid. Spread superiori a 8 pips per un cinque cifre è normale per la maggior parte delle coppie di valute.
flint17480, 2016.02.01 08:58
Salve. Non ha chiuso il profitto sulla candela 09-47 minuti su EURUSD il profitto era a 1.08428 la candela è andata a 1.08420. Cosa fare? Grazie in anticipo.Buon pomeriggio a tutti) Condividete il codice per uno stop loss mobile - per guidare il prezzo )))) Grazie in anticipo.