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
Ho letto questo thread da cima a fondo cercando di trovare una soluzione.
Cyberia Trader1.85g versione jpy.mq4 L'ho caricato e ho la faccia ma non ho avuto nessun ordine. Sto usando la coppia USD/CHF su 30mins. non avere ordini rende davvero difficile fare qualsiasi test in avanti. il sistema è stato in esecuzione per 4 giorni e ancora nessun ordine.
Un po' di aiuto sarebbe fantastico, grazie.
grazie
BenoTi aiuterei se sapessi come fare meglio del 70% ma non lo so. Funziono sul grafico a 1 ora, prova quello.
Grazie per quel pezzo di codice. L'ho guardato e vedo che crea e legge i file. Non vedo che aggiunge qualcosa alla fine di un file già creato. Forse lo fa e io non lo vedo e forse non lo fa e non c'è niente da vedere. Vorrei conoscere un pezzo di codice che sappiamo essere un'aggiunta di dati alla fine, così potrei vedere come lo fa.
Dai un'occhiata a questo thread:
https://www.mql5.com/en/forum/175496
Ho lavorato molto su questo codice e l'ho lasciato un po' in disordine, ma...
i miei sforzi per farlo stampare su file si stanno rivelando infruttuosi al momento.
Credo che chiederò a coloro che vogliono assistere nella raccolta dei dati di fare il tentativo di farlo manualmente.
Ho questo allegato EA impostato per stampare sul giornale le logiche minime del CT. Questo non è afferrare alcun indicatore, ma forse solo guardando le logiche del CT ci darà qualcosa per andare con.
Per raccogliere questi dati, quello che dovete fare è eseguire l'ea nel set up di backtester così com'è. Tuttavia, mentre viene eseguito è necessario monitorare la scheda journal. Dal momento che il diario non può contenere più dei dati di alcuni ordini senza iniziare a troncare e far cadere i dati dalla parte inferiore. dovrai fermare il test molto rapidamente quando raggiungi circa ogni 5 - 7 ordini successivi. Poi copiate e incollate i dati in un blocco note e riavviate il tester guardando quando arriva al punto in cui avete fatto il precedente copia/incolla. Devi fare attenzione a catturare tutti i dati quando incolli che assomigliano a questo per un ordine...
2006.11.10 10:22:52 2004.03.05 03:02 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: Recorded Winning Long 56 Opened: 1.2188 Closed: 1.221
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: Ticket: 56 DV: -0.0051 CCI: 57.9346 Long order is opened @: 1.2188 StopLoss= 1.2171 TakeProfit= 1.2285
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: Buy @ Minute 40
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: open #56 buy 0.42 EURUSDm at 1.2188 sl: 1.2171 tp: 1.2285 ok
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: BuyPossibilityMid:0.0004
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: SellPossibilityMid:0.0004
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: UndefinedPossibilityMid:0.0009
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: BuySucPossibilityMid:0.002
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: SellSucPossibilityMid:0.0021
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: UndefinedSucPossibilityMid:0.0021
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: BuyPossibilityQuality:8
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: SellPossibilityQuality:8
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: UndefinedPossibilityQuality:19
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: BuySucPossibilityQuality:7
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: SellSucPossibilityQuality:7
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: UndefinedSucPossibilityQuality:14
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: UndefinedPossibilityMid*UndefinedPossibilityQuality:0.0164
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: BuyPossibilityMid*BuyPossibilityQuality:0.0032
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: SellPossibilityMid*SellPossibilityQuality:0.0034
2006.11.10 10:22:52 2004.03.04 18:40 Cyberia Trader1.9 R2.2 AlertEuro EURUSDm,H1: Hour: 18 Minute: 40
esegui questo su un grafico di un'ora e cattura i dati. poi mandami il file .txt notepad per email forse se islandhome partisse dal primo ordine e facesse i primi 500 traeds del 2005 e AZBOfin partisse dal trade 500 del 2005 e facesse i prossimi 500?
ah! che palle. fammi provare quello che il guru dei codificatori ha appena postato.
Dai un'occhiata a questo thread: https://www.mql5.com/en/forum/175496
Wow, potresti avermi appena salvato un sacco di problemi qui...
Potresti guardare l'EA che ho postato e vedere dove sto cercando di stampare su file in 4 posti nel codice. Due volte dove apre gli ordini e poi in funzioni separate quando chiude gli ordini. Vedi cosa sto cercando di estrarre da questo? Potreste aiutarmi a codificare questo in modo che registri le informazioni di ogni ordine, la logica del programma quando si apre e il risultato quando l'ordine si chiude?
Se faccio questo fileflush dopo ogni volta si cancella qualcosa? Non ho ancora capito come funziona la cosa del flush.
Eureka! Oh amico, beh, grazie guru dei codificatori, bel salvataggio!
Ora sono ancora un po' perplesso... notate che il file .txt non stampa una riga di risultato per ogni ordine. perché lo salta per alcuni ordini, mi chiedo?
Posso supporre che se non stampa la riga di esito che si tratta di una posizione perdente?
Non sarai mai in grado di decifrare quei dati in quel formato, hai bisogno che siano in righe, prova a incorporare queste.
Sto ancora avendo un problema con esso che dice che troppi file sono aperti... ma ecco il modo di base in cui il vostro dumpp deve essere formattato in modo da poterlo visualizzare in excel
//LOGIC FOR HEADER OF FILE - creates the header labels for the rows in the CSV file
string fileName = Symbol() + "-" + TimeToStr(LocalTime(), TIME_DATE) + " " + TimeHour(LocalTime()) + "-" + TimeMinute(LocalTime()) + ".csv";
File = FileOpen(fileName, FILE_CSV|FILE_WRITE, ',');
if (FileWrite(File, Symbol(),"DATETIME","Lots","Bid","SlipPage","StopLoss","TakeProfit","MagicNumber",
"SellPossibilityMid*SellPossibilityQuality",
"BuyPossibilityMid*BuyPossibilityQuality",
"UndefinedPossibilityMid*UndefinedPossibilityQuality",
"UndefinedSucPossibilityQuality",
"SellSucPossibilityQuality",
"BuySucPossibilityQuality",
"UndefinedPossibilityQuality",
"SellPossibilityQuality",
"BuyPossibilityQuality",
"UndefinedSucPossibilityMid",
"SellSucPossibilityMid",
"BuySucPossibilityMid",
"UndefinedPossibilityMid",
"SellPossibilityMid",
"BuyPossibilityMid",
"Decision" ) < 0)
{
PrintError();
return (Error);
}
//LOGIC FOR APPEND OF FILEWRITE - Writes the rows of data
//Record statistics at time of Order - Added by DudeWorks
void RecordTickets ()
{
if (Error > 0)
return (Error); //stop on error
FileSeek(File,0,SEEK_END);
if (FileWrite(File, Symbol(),TimeToStr(CurTime(),TIME_DATE|TIME_SECONDS),Lots,Bid,SlipPage,StopLoss,TakeProfit,MagicNumber,
SellPossibilityMid*SellPossibilityQuality,
BuyPossibilityMid*BuyPossibilityQuality,
UndefinedPossibilityMid*UndefinedPossibilityQuality,
UndefinedSucPossibilityQuality,
SellSucPossibilityQuality,
BuySucPossibilityQuality,
UndefinedPossibilityQuality,
SellPossibilityQuality,
BuyPossibilityQuality,
UndefinedSucPossibilityMid,
SellSucPossibilityMid,
BuySucPossibilityMid,
UndefinedPossibilityMid,
SellPossibilityMid,
BuyPossibilityMid,
Decision) < 0)
{
PrintError();
return (Error);
}
FileFlush(File);
return(0);
}
Non sarai mai in grado di decifrare quei dati in quel formato, hai bisogno che siano in righe, prova a incorporare questi.
Ho ancora un problema con il fatto che dice che ci sono troppi file aperti... ma ecco il modo in cui il vostro dumpp deve essere formattato in modo da poterlo visualizzare in excel
//LOGIC FOR HEADER OF FILE - creates the header labels for the rows in the CSV file
string fileName = Symbol() + "-" + TimeToStr(LocalTime(), TIME_DATE) + " " + TimeHour(LocalTime()) + "-" + TimeMinute(LocalTime()) + ".csv";
File = FileOpen(fileName, FILE_CSV|FILE_WRITE, ',');
if (FileWrite(File, Symbol(),"DATETIME","Lots","Bid","SlipPage","StopLoss","TakeProfit","MagicNumber",
"SellPossibilityMid*SellPossibilityQuality",
"BuyPossibilityMid*BuyPossibilityQuality",
"UndefinedPossibilityMid*UndefinedPossibilityQuality",
"UndefinedSucPossibilityQuality",
"SellSucPossibilityQuality",
"BuySucPossibilityQuality",
"UndefinedPossibilityQuality",
"SellPossibilityQuality",
"BuyPossibilityQuality",
"UndefinedSucPossibilityMid",
"SellSucPossibilityMid",
"BuySucPossibilityMid",
"UndefinedPossibilityMid",
"SellPossibilityMid",
"BuyPossibilityMid",
"Decision" ) < 0)
{
PrintError();
return (Error);
}
//LOGIC FOR APPEND OF FILEWRITE - Writes the rows of data
//Record statistics at time of Order - Added by DudeWorks
void RecordTickets ()
{
if (Error > 0)
return (Error); //stop on error
FileSeek(File,0,SEEK_END);
if (FileWrite(File, Symbol(),TimeToStr(CurTime(),TIME_DATE|TIME_SECONDS),Lots,Bid,SlipPage,StopLoss,TakeProfit,MagicNumber,
SellPossibilityMid*SellPossibilityQuality,
BuyPossibilityMid*BuyPossibilityQuality,
UndefinedPossibilityMid*UndefinedPossibilityQuality,
UndefinedSucPossibilityQuality,
SellSucPossibilityQuality,
BuySucPossibilityQuality,
UndefinedPossibilityQuality,
SellPossibilityQuality,
BuyPossibilityQuality,
UndefinedSucPossibilityMid,
SellSucPossibilityMid,
BuySucPossibilityMid,
UndefinedPossibilityMid,
SellPossibilityMid,
BuyPossibilityMid,
Decision) < 0)
{
PrintError();
return (Error);
}
FileFlush(File);
return(0);
}
Questo non è un problema per me.
La funzione di importazione di dati esterni su excel li mette in righe abbastanza bene. basta dirgli che sono delimitati da ";" La sfida che vorrei ottenere con la formattazione è che non sta stampando una linea di risultato per le posizioni perdenti. Questo significa che i dati nelle righe non sono gli stessi per ogni ordine, il che rende difficile progettare un identificatore che riconosca le voci perdenti. In questo momento posso separare i dati vincenti dal resto bene, forse è abbastanza, penso di poter lavorare intorno a quello che ho, ma non ho ancora nessun dato indicatore in questo.
Guardate qui... ho dato a questa cosa una funzione tutta sua ora per salvare la linea del risultato del trade perdente e ancora non stampa la linea???? oy, andiamo su una linea è troppo da chiedere?
{
//OrderSelect(OrderTicket(),SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
{
if(OrderType()==OP_BUY)
{
if(OrderOpenPrice() + Spread >= OrderClosePrice())
{
datetime blorderOpen=OrderOpenTime();
handle = FileOpen("Cyberia.txt",FILE_READ|FILE_WRITE);
if(handle!=-1)
{
FileSeek(handle,0,SEEK_END);
FileWrite(handle,"Losing Long OrderTicket: ",OrderTicket()," Opened @: ",OrderOpenPrice()," Closed @: ",OrderClosePrice()," Order Open Time: ",blorderOpen);
FileWrite(handle," ");
Print("Recorded Losing Long ",OrderTicket()," Opened: ",OrderOpenPrice()," Closed: ", Bid);
FileFlush(handle);
FileClose(handle);
}
else
{
int err1;
err1=GetLastError();
Print("error(",err1,"): ",ErrorDescription(err1));
return(0);
}
}//if win or lose
}//if buy
}//if symbol and magic number
return (0);
}//record long outcomes[/PHP]
what gives???
see this? this works fine...
[PHP]void RecordLongOutcomes()
{
//OrderSelect(OrderTicket(),SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
{
if(OrderType()==OP_BUY)
{
if(OrderOpenPrice() + Spread < OrderClosePrice())
{
datetime borderOpen=OrderOpenTime();
handle = FileOpen("Cyberia.txt",FILE_READ|FILE_WRITE);
if(handle!=-1)
{
FileSeek(handle,0,SEEK_END);
FileWrite(handle,"Winning Long OrderTicket: ",OrderTicket()," Opened @: ",OrderOpenPrice()," Closed @: ",OrderClosePrice()," Order Open Time: ",borderOpen);
FileWrite(handle," ");
Print("Recorded Winning Long ",OrderTicket()," Opened: ",OrderOpenPrice()," Closed: ", Bid);
FileFlush(handle);
FileClose(handle);
}
else
{
int err;
err=GetLastError();
Print("error(",err,"): ",ErrorDescription(err));
//return(0);
}
}//if win or lose
}//if buy
}//if symbol and magic number
RecordLongLOutcomes();
return (0);
}//record long outcomesE' lo stesso codice! (praticamente) Questo linguaggio mql è incredibilmente temperante!
ciao Aaragorn
pls caricare il file migliore set
per cyber
tnx
ciao
ciao Aaragorn
pls caricare il miglior file set
per cyber
tnx
ciaoè in questo...
https://www.mql5.com/en/forum/174700/page71