Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Ancora problemi
Ciao a tutti,
Grazie Big Be per aver dato un'occhiata al mio EA. Il mio RSI stocastico è senza la sottolineatura. Quando ho provato con, mi ha dato un errore. Ma ho scoperto alcune cose.
1) Quando provo Strategy Tester sui time frame inferiori, sembra funzionare più velocemente. Una volta che arrivo a H1 o oltre, diventa molto lento. Suppongo che sia perché deve fare troppi controlli su ogni tick. C'è qualcosa che si può fare per questo? Vorrei ottimizzarlo per H4 e possibilmente anche per Daily.
2) C'è ancora il problema del primo trade che avviene prima di un vero e proprio cross.
3) Quando guardo i miei backtest, sembra che manchi completamente alcuni trade. È perché i miei dati sono difettosi/miscelati? Ho controllato in giro e ho trovato un posto dove New Digital spiega come ottenere i dati per il broker che stiamo usando andando nella cronologia e facendo doppio clic su di essa... poi aprendo ogni time frame e tenendo premuto "Page Up" fino alla fine, ma non sembra aiutare.
La parte del programma che ti ho mandato è solo una parte di 3. Devo ancora aggiungere le altre 3 parti. Se non riesco a far diventare più veloce lo Strategy Tester, non saprò mai se è un'idea redditizia.
Qualsiasi idea o suggerimento sarà utile.
Saluti,
Putz
Studia quello che ho fatto per un EA Volatility Quality Index che ho sistemato, Kiko_v2.
Vedi il post 319 qui:
https://www.mql5.com/en/forum/general
Buon divertimento,
Grande Essere
Vq
Ciao Big Be
Grazie per l'idea. Ci lavorerò questo fine settimana...e se tutto funziona alla grande...dovrei essere ricco per il prossimo fine settimana...hahaha
Putz
Aiuto...per favore
Ciao Big Be e tutti i programmatori,
Big Be, ho studiato il tuo EA di volatilità ma ora sembra che non fosse il mio problema dopo tutto. Stavo usando IBFX per il mio backtesting e non avevo altro che problemi. Alla fine mi sono arreso e ho scaricato Alpari e funziona molto meglio.
Almeno ora non ci vogliono giorni per fare un backtest sui miei EA. Così ho ricominciato tutto da capo e ho ricostruito il mio programma da zero e non piazza nessun ordine.
Il programma è fondamentalmente l'EMS Fresh Cross di codersguru ma voglio che sia basato sullo stocastico RSI e quando lo stocastico RSI attraversa la linea 50. Ho lasciato quasi tutto come da codersguru comprese le variabili per rendere più facile isolare il problema.
Credo che il problema sia nella funzione iCustom dato che è praticamente l'unico cambiamento che ho fatto al programma e non prende nessun ordine. Qualcuno può dare un'occhiata e vedere se può trovare il mio errore. Sono due settimane che cerco di farlo funzionare e mi sta facendo impazzire.
Ho messo un paio di note precedute da //
Grazie
Putz
#property copyright "Putz FX
#property link "http://www.putzfx.com"
//---- input parameters
extern double TakeProfit=130;
extern double StopLoss = 60;
extern double Lots=1;
extern double TrailingStop=30;
extern double TimeFrame= 60;
extern bool ExitOnCross = true;
extern int MagicNumber = 444444;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
int FreshCross ()
{
//This was added in based on what I could figure from Big Be.
if (Volume[0] != 1) return(0);
//what is the difference between using "Null" or "Symbol()" in iCustom as
//neither one works.
double SEma, LEma,SEmaP, LEmaP;
//The following 4 lines have been changed from the original
SEma = iCustom(Symbol(),PERIOD_H1,"Stochastic RSI",28,55,9,0,0);
LEma = 50;
SEmaP = iCustom(Symbol(),PERIOD_H1,"Stochastic RSI",28,55,9,0,1);
LEmaP = 50;
//Don't work in the first load, wait for the first cross!
//some changes were done to the below two lines as he was comparing the
//return value with the Ask or Bid and Close values
if(SEma>LEma && SEmaP < LEmaP) return(1); //up
if(SEma LEmaP) return(2); //down
return (0); //not changed
}
//+------------------------------------------------------------------+
//| Check Open Position Controls |
//+------------------------------------------------------------------+
int CheckOpenTrades()
{
int cnt;
int NumTrades; // Number of buy and sell trades in this symbol
NumTrades = 0;
for(cnt=OrdersTotal()-1;cnt>=0;cnt--)
{
OrderSelect (cnt, SELECT_BY_POS, MODE_TRADES);
if ( OrderSymbol() != Symbol()) continue;
if ( OrderMagicNumber() != MagicNumber) continue;
if(OrderType() == OP_BUY ) NumTrades++;
if(OrderType() == OP_SELL ) NumTrades++;
}
return (NumTrades);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
int cnt, ticket, total;
double TP;
if(Bars<100)
{
Print("bars less than 100");
return(0);
}
/* if(TakeProfit<10)
{
Print("TakeProfit less than 10");
return(0); // check TakeProfit
}
*/
int isCrossed = 0;
isCrossed = FreshCross ();
total = CheckOpenTrades();
if(total < 1)
{
if(isCrossed == 1)
{
TP = 0;
if (TakeProfit > 0) TP = Ask + TakeProfit * Point;
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,TP,"EMA_CROSS",MagicNumber,0,Green);
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
}
else Print("Error opening BUY order : ",GetLastError());
return(0);
}
if(isCrossed == 2)
{
TP = 0;
if (TakeProfit > 0) TP = Bid - TakeProfit * Point;
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+StopLoss*Point,TP,"EMA_CROSS",MagicNumber,0,Black);
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
}
else Print("Error opening SELL order : ",GetLastError());
return(0);
}
return(0);
}
total = OrdersTotal();
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
//OrderPrint();
if(OrderType()<=OP_SELL && OrderSymbol()==Symbol() && OrderMagicNumber() == MagicNumber)
{
if(OrderType()==OP_BUY) // long position is opened
{
// should it be closed?
/* REMOVED - Trailling stop only close */
if(ExitOnCross && isCrossed == 2)
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,Black); // close position
return(0); // exit
}
/**/
// check for trailing stop
if(TrailingStop>0){
if(Bid-OrderOpenPrice()>Point*TrailingStop)
{
if(OrderStopLoss()<Bid-Point*TrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
return(0);
}
}
}
}
else // go to short position
{
// should it be closed?
/* REMOVED - Trailling stop only close */
if(ExitOnCross && isCrossed == 1)
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Black); // close position
return(0); // exit
}
/* */
// check for trailing stop
if(TrailingStop>0){
if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
{
if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);
return(0);
}
}
}
}
}
}
return(0);
}
//+------------------------------------------------------------------+Hai verificato che la tua RSI stocastica prende 3 parametri di input?
(Quello che ho guardato io ne prende 4)
che aiuta
Ciao Ralph,
Grazie per il tuo aiuto. Il mio ha due buffer ma 4 parametri di input. Ho provato con 4 parametri e non ha funzionato, ma poi ho provato con 2 e ho ottenuto un ordine. Ora devo solo risolvere il resto. Grazie per avermi sbloccato.
Putz
Domanda noob da noobie!
post spostato qui: https://www.mql5.com/en/forum
qualcuno mi aiuta?
ciao a tutti
tutti voi conoscete l'indicatore Pivot_Monday_fixed
ho bisogno di alcune modifiche in questo indicatore
Voglio solo la linea pivot e altre quattro linee
2 colore blu Pivot +20 e Pivot + 40
2 colore rosso Pivot - 20 e Pivot - 40
solo 5 linee
grazie
Domanda stupida
Qualcuno può dirmi il modo più veloce per convertire il file mq4 di un EA in un file ex4?
So che viene visualizzato nei file esperti come ex4 dopo l'esecuzione su mt4 una volta, ma questo è l'unico modo per farlo?
Grazie in anticipo
Qualcuno può dirmi il modo più veloce per convertire il file mq4 di un EA in un file ex4?
So che viene visualizzato nei file esperti come ex4 dopo aver eseguito su mt4 una volta, ma questo è l'unico modo per farlo?
Grazie in anticipoAprite il vostro file .mq4 nel MetaEditor, poi cliccate su "Compile" e il file .ex4 viene creato.