ForexUp EA

Sezione dedicata a metatrader (ed altre piattaforme) ed al suo linguaggio di programmazione per il trading automatico
Rispondi
Avatar utente
carlo10
Messaggi: 4259
Iscritto il: 08/05/2014, 21:17

ForexUp EA

Messaggio da carlo10 »

ForexUp EA

Versione 5: download/file.php?id=16499
Avatar utente
carlo10
Messaggi: 4259
Iscritto il: 08/05/2014, 21:17

ForexUP EA versione 1

Messaggio da carlo10 »

ForexUp_EA_v1.mq4
ForexUP EA versione 1
(28.55 KiB) Scaricato 19 volte
Sto lavorando a questo Expert Advisor, prossimamente entrerò nei dettagli del funzionamento.
Nel frattempo per chi vuole sperimentare in demo con i settaggi di default può ad esempio funzionare su EURUSD grafico ad 1 minuto, capitale minimo consigliato 3000 euro.

Posso dire a grandi linee che è un mix tra un sistema a griglia e un basket profit. Inizialmente gli ordini non hanno stop loss e dovrebbe coprirsi in hedge.

Con le variabili in ingresso che spiegherò prossimamente si può modificare sensibilmente il comportamento per adattarlo allo strumento su cui si vuole utilizzare.

E' piuttosto rischioso ma può realizzare profitti interessanti.
Avatar utente
carlo10
Messaggi: 4259
Iscritto il: 08/05/2014, 21:17

ForexUP EA versione 2

Messaggio da carlo10 »

ForexUp_EA_v2.mq4
ForexUP EA versione 2
(33.84 KiB) Scaricato 19 volte
Questa versione corregge alcuni bug e migliora la gestione degli ordini.
Avatar utente
carlo10
Messaggi: 4259
Iscritto il: 08/05/2014, 21:17

ForexUP EA versione 3

Messaggio da carlo10 »

ForexUp_EA_v3.mq4
ForexUP EA versione 3
(32.41 KiB) Scaricato 32 volte
Modifica per rendere più aggressiva l'apertura degli ordini e riduzione parametro in input.
Avatar utente
m1player
Messaggi: 102
Iscritto il: 08/07/2014, 21:54

Modifica per trailing stop

Messaggio da m1player »

Complimenti, ci sono molti spunti interessanti.
Mi sono soffermato sulla funzione setStopLoss perchè l'ho trovata parecchio utile e vorrei capire bene, alla riga 197 può essere MathMin al posto di MathMax?

Codice: Seleziona tutto

         if(OrderType() == OP_SELL && MathMax(OrderStopLoss(), OrderOpenPrice()) > Ask + points_between_orders * Point)
Avatar utente
carlo10
Messaggi: 4259
Iscritto il: 08/05/2014, 21:17

Re: Modifica per trailing stop

Messaggio da carlo10 »

Grazie a te.
Quella riga funziona così com'è solo perchè nell'if al livello superiore c'è la condizione che verifica che OrderStopLoss sia uguale a zero.
Per rendere robusto il codice e utilizzarla come trailing stop (esperimento che ho fatto ma non sembra portare beneficio) bisogna aggiungere qualche condizione in più perchè sostituendo solo MathMin prenderesti sempre il valore di OrderStopLoss a zero.
Avatar utente
m1player
Messaggi: 102
Iscritto il: 08/07/2014, 21:54

Re: Modifica per trailing stop

Messaggio da m1player »

Chiaro, infatti mi piaceva l'idea del trailing stop... :yes:
Avatar utente
carlo10
Messaggi: 4259
Iscritto il: 08/05/2014, 21:17

Bug in apertura ordini doppi

Messaggio da carlo10 »

Ottimo, se sperimentando trovi qualcosa di interessante aggiornami!
Visto che programmi anche tu ti metto al corrente riguardo all'unico bug di comportamento su cui mi sono imbattuto fin'ora, non ho ancora capito ed approfondito la causa.

Sostanzialmente l'EA non dovrebbe aprire ordini dello stesso tipo se già presenti (e senza stop impostato) come prezzo di apertura nell'intorno definito dalla variabile points_between_orders.
Raramente capita però che me ne apra 2 come in questo caso:
ordine_doppio.JPG
Devo aggiungere un po' di debug per approfondire il motivo ma se lo scopri prima tu mi risparmi la fatica.
Avatar utente
carlo10
Messaggi: 4259
Iscritto il: 08/05/2014, 21:17

Punti deboli su JPY

Messaggio da carlo10 »

Chi ha avuto modo di fare qualche backtest avrà potuto osservare risultati interessanti su diversi strumenti. Purtroppo le serie storiche a mia disposizione sono piuttosto limitate sia per qualità dei dati che per profondità. I dati ad 1 minuto di default del broker durano in media 6 mesi.
I tester sono più che benvenuti.

Ci sono però alcuni cross su cui l'expert advisor si comporta male, in genere tutti quelli con JPY. Oggi l'ho attaccato in demo su USDJPY per capire quale movimento di prezzo lo manda particolarmente in crisi e vedere se ci sono contromisure da adottare.
Anche qui per chi vuole aiutare c'è bisogno di una mano.
Avatar utente
carlo10
Messaggi: 4259
Iscritto il: 08/05/2014, 21:17

Funzionamento

Messaggio da carlo10 »

Ed ora due parole sul funzionamento.
L'expert advisor cerca di aprire una griglia di ordini ogni tot di pips (parametro pilotato dalla variabile points_between_orders).

Apertura ordini senza stop e target:
- in direzione del trend quando la chiusura della candela risulta superiore/inferiore il massimo/minimo delle ultime breakout_bars
- opposta al trend quando la chiusura della candela risulta superiore/inferiore il massimo/minimo delle ultime mean_reverting_bars

Quando apre un nuovo ordine verifica se agli ordini precedenti può essere applicato uno stop in profitto se la distanza prezzo attuale/prezzo di apertura è superiore a points_between_orders. Gli ordini con stop già impostato non più vengono considerati per l'apertura di nuovi ordini.

Non opera quando lo spread supera il limite impostato nella variabile max_spread_points.

Chiusura delle posizioni:
- chiude tutte le posizioni se il profitto totale è superiore al saldo del contro moltiplicato per la variabile basket_profit
- cerca di chiudere la peggior posizione in perdita dopo 4 ore dall'apertura (in realtà il minimo tra breakout_bars e mean_reverting_bars) se ci sono posizioni opposte in grado di coprire la perdita e chiudere complessivamente in guadagno.

Giocando con i valori delle variabili in input si possono ottenere comportamenti molto differenti.
Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti