sabato 10 agosto 2013

Forex Forum IP

Se sei arrivato in questa pagina è probabile che tu abbia provato ad accedere a http://forex.forumup.it ed abbia ricevuto il seguente messaggio:

FLOOD CONTROL ACTIVE and detect this ip as flooder. If You are secure this ip 82.58.161.217 (class 82.58.161.0) is not used as flood please contact support staff at http://staff.forumup.it from another IP or PC. Try again from 23:59:43 seconds


Il motivo per cui ricevi questo messaggio è dovuto al filtro anti-spammer adottato dalla piattaforma forumup che banna il tuo indirizzo IP dal forum per 24 ore quando vengono effettuate troppe richieste consecutive dallo stesso indirizzo.

L'unico modo per aggirare questo blocco senza dover attendere le 24 ore è quello di riavviare il router di casa in modo da cambiare l'indirizzo IP assegnato dal provider dell'ADSL. Questa tecnica non funziona però ad esempio con fastweb che assegna un indirizzo IP fisso ad ogni proprio cliente.

 

domenica 10 febbraio 2013

Nuovo capitolo sistemi a griglia

A quasi un anno di distanza dal mio ultimo articolo su questo blog torno con una grande ed interessante novità: Nuovo capitolo sistemi a griglia.

Sono rimasto affascinato dal lavoro svolto da Fabrizio in questi anni all'interno del forum e dai risultati e dalla partecipazione ottenuti nella sua discussione.

Leggendo che il gruppo che si era formato all'interno del forum stava per rimanere senza di un programmatore ho deciso di provare a dare una mano e, dopo molto tempo, di rimettere mano al codice.

 

domenica 11 marzo 2012

OrderSend Error 138

L'errore 138 è un errore che si incontra tipicamente quando si utilizza denaro reale e non su conti demo oppure in fase di backtest.

Come al solito andiamo a cercare il suo significato nella documentazione ufficiale di metatrader:

ERR_REQUOTE - 138: The requested price has become out of date or bid and ask prices have been mixed up. The data can be refreshed without any delay using the RefreshRates function and make a retry. If the error does not disappear, all attempts to trade must be stopped, the program logic must be changed.

Che in parole povere indica che il prezzo di mercato che abbiamo inserito nella funzione OrderSend non è più valido rispetto all'attuale prezzo del cambio, comunemente questo comportamento viene chiamato requote.

Ci sono 2 motivi principale per cui questo può accadere:
 

sabato 10 marzo 2012

Metatrader error 131

L'errore 131 è uno degli errori più frequenti che si incontrano quando si testano gli expert advisor di metatrader.

Nella documentazione ufficiale di metatrader troviamo questa definizione:

Error 131 - ERR_INVALID_TRADE_VOLUME: Invalid trade volume, error in the volume granularity. All attempts to trade must be stopped, and the program logic must be changed.

Questo significa che l'ea sta cercando di piazzare a mercato un ordine con un volume non valido, nella chiamata alla orderSend stiamo quindi passando un valore non corretto al terzo parametro:

int OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)

Generalmente è un errore che viene restituito quando tentiamo di usare frazioni di lotto non consentite negli account standard ma può capitare di avere lo stesso problema anche sui mini-conti.

Ma come superare questo problema e passare alla funzione dei valori corretti in modo che gli ordini inseriti vengano effettivamente aperti?
 

martedì 5 luglio 2011

Error 4109: Trade is not allowed

Uno dei primi errori che si incontrano su metatrader quando si passa dai backtest al demo è l'errore 4109. Se pensate di aver fatto tutte per bene e non sapete dove sbattere la testa non dovete allarmarvi, si tratta di un problema facilmente risolvibile agendo sulle impostazioni di metatrader.

Nella casella consiglieri avrete una situazione simile alla seguente:

metatrader errore 4109: TRADE NOT ALLOWED

La metaqutoes in questo caso ci offre una spiegazione molto precisa in grado di condurci alla risoluzione del problema con un paio di click:

ERR_TRADE_NOT_ALLOWED 4109 Trade is not allowed. Enable checkbox "Allow live trading" in the expert properties.

Un altro elemento che ci dovrebbe allarmare è il fatto che, una volta caricato l'expert advisor, notiamo che la faccina in alto a destra sul grafico è triste:

metatrader expert advisor con faccina triste
 

lunedì 20 giugno 2011

Metatrader: orderSend error 130

Una delle prime cose che si imparano una volta terminata la scrittura dei primi expert advisor è quella di effettuare la stampa degli errori che vengono sollevati durante la gestione degli ordini. Ad esempio è possibile visualizzare le motivazioni della mancata apertura di un ordine utilizzando la funzione GetLastError() subito dopo aver invocato la funzione orderSend:

v_ticket=OrderSend(Symbol(), OP_BUY, e_Lots, Ask, 3, Ask - (e_Stoploss*g_Point), Ask + (e_TakeProfit*g_Point), "my first EA", e_MagicID, 0, Green);
if(v_ticket>0){
if(OrderSelect(v_ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
}
else Print("Error opening BUY order : ",GetLastError());
return(0);

Gli errori sollevati a run-time da metatrader possono essere visualizzati:

  • sul diario se stiamo eseguendo un backtest
  • sulla casella consiglieri se stiamo utilizzando l'ea in demo o con denaro reale
metatrader error 130

E' possibile visualizzare la lista completa degli errori di metatrader al seguente link:
 

giovedì 19 maggio 2011

Metatrader automated trading championship 2011: iniziano i preparativi

Oggi sono iniziati ufficialmente (per quanto ci riguarda) i preparativi alla metatrader automated championship 2011. Competizione che, come da tradizione, dovrebbe avere il via in Ottobre:

Expert Advisor per la Metatrader championship 2011

L'obbiettivo di questa squadra sarà quello di comportarsi dignitosamente in questa edizione del campionato e magari essere i primi tra gli italiani.

Le edizioni precedenti di questo torneo infatti ci hanno abituato a performance a dir poco mostruose da parte dei primi classificati ed un piazzamento al vertice è un sogno che non ci permettiamo nemmeno di fare.
 

domenica 1 maggio 2011

Zulutrade e metatrader: gestione del conto a pc spento

E' ormai da un paio d'anni che sento parlare di zulutrade e, non avendo mai approfondito l'argomento, ero convinto che si trattasse di un sistema di gestione dei conti su piattaforma metatrader che utilizzava l'interfaccia client per la gestione e l'invio degli ordini.

In realtà i ragazzi di zulutrade.com hanno fatto le cose per bene ed hanno brevettato un sistema che può funzionare anche senza il bisogno di mantenere acceso il pc, dalle FAQ infatti si può leggere quanto segue:

ZuluTrade riceve i loro consigli e controlla i Fornitori di segnale che hai scelto nel tuo profilo di conto e decide se utilizzare o meno i loro servizi nel tuo conto live utilizzando una connessione diretta e sicura con il backend del broker. Il meccanismo brevettato di ZuluTrade effettua compravendite automaticamente senza l’intervento dell’uomo. Il servizio ZuluTrade si basa sul server, in altre parole non c’è bisogno di tenere il computer acceso.

La domanda successiva che mi sono posto è stata quindi la seguente: per permettere a zulutrade di operare con il mio conto dovrò fornirgli i miei dati di accesso? Anche in questo caso troviamo la risposta ad una delle domande frequenti:
 

venerdì 22 aprile 2011

Personalizzare i commenti della funzione OrderSend()

Se osservate il terminale di metatrader potrete notare un campo denominato commento:

storico operazioni metatrader

Se state inserendo un ordine manualmente è possibile valorizzare il campo tramite l'apposita maschera:

invio ordini metatrader

Se gli ordini vengono invece aperti da un expert advisor sarà sufficiente valorizzare il parametro comment della funzione OrderSend():

int OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)

Potreste però avere l'esigenza di far girare lo stesso expert advisor con settaggi differenti e di voler distinguere gli ordini aperti dalle 2 versioni.
 

domenica 3 aprile 2011

Key Level Stop & Reverse EA versione 5: aggiunta del trailing level

In questo articolo vado a presentare le novità introdotte nella quinta versione dell'expert advisor Key Level Stop & Reverse.

Francesco ha pensato che, per poter sfruttare i backtest di metatrader, poteva essere interessante rendere il livello dinamico spostandolo ad una certa distanza dal prezzo una volta che questo si trova in gain di un determinato numero di pips.

Abbiamo inserito quindi una specie di trailing stop che in realtà non va a modificare lo stoploss dell'ordine aperto ma modifica il livello chiave impostato manualmente nelle variabili esterne dell'ea:

extern   double   e_TrailingLevel            = 30;

Dopo alcune prove però ho osservato che con questo meccanismo, in caso di trailing non molto elevato, si introducevano delle situazioni anomale. A volte il livello modificato si veniva a trovare tra il prezzo e la media mobile e scombinava quindi il normale funzionamento.
La soluzione che ho adottato è stata quella di utilizzare come riferimento per il trailing level la media mobile veloce al posto del prezzo.
 

domenica 27 marzo 2011

Key Level Stop & Reverse EA versione 4

Nella versione precedente di questo expert advisor era emerso un problema sul mancato reverse degli ordini.

Francesco aveva individuato che molto spesso il Key Level Stop & Reverse EA non reversava la posizione, ecco un esempio:

mancata apertura ordine su eur chfy

Nella figura sopra infatti possiamo osservare che l'ordine short aperto il 7 Febbraio 2011 non viene chiuso il giorno 8 Febbraio intorno alle ore 14.
 

mercoledì 2 marzo 2011

Bilancio primi giorni di trading

Nella giornata di ieri non ho potuto chiudere la posizione aperta il giorno 28, verso le ore 18 avevo controllato la candela che era positiva e pertanto ho pensato di mantenere aperto il long.

Sono riuscito a chiuderlo solo questa sera portando a casa un gain di 80 pips:

28/02/2010 LONG EUR/USD a 1.3789 -> chiusura posizione a 1.3869 +80 pips

Non ho però aperto altre posizioni dato che ho visto che l'euro ha ragginuto il massimo registrato in data 2 Febbraio.

In generale non sono soddisfatto delle mie operazioni, cerco una semplice strategia trend following ma in questo modo mi sembra di tirare un pò a caso. Meglio pensare ad un'altra strategia, l'obbiettivo è comunque quello di entrare nel mercato verso questo orario senza dedicare troppo tempo al forex.
 

lunedì 28 febbraio 2011

Seconda settimana di forex trading con la strategia set and forget

Inizio la seconda settimana di trading lasciando invariata la strategia, la candela di oggi sul cross EUR/USD è attualmente positiva ed apro quindi una nuova posizione buy:

28/02/2010 LONG EUR/USD a 1.3789

Ricordo che attualmente il conteggio dei pips è in passivo con un bel -84, niente di irrecuperabile per ora.
 

venerdì 25 febbraio 2011

Risultati dopo la prima settimana di trading con la strategia set and forget

Chiuso il long su euro dollaro a -42 pips:

24/02/2010 LONG EUR/USD a 1.3797 -> chiusura posizione a 1.3755 -42 pips

Per questa settimana mi fermo qui, chiudo la metatrader e la riapro lunedì sera sempre verso le 19.

Non mi piace mantenere posizioni aperte sul forex durante il weekend!

La settimana non è andata bene, il conteggio dei pips è negativo, ma è necessario attendere un periodo più lungo prima di apportare dei cambiamenti al trading system.
 

giovedì 24 febbraio 2011

Set and forget: -42 pips

Chiuso la posizione long di ieri a +52 pips:

23/02/2010 LONG EUR/USD a 1.3745 -> chiusura posizione a 1.3797 +52 pips

Aperto nuova posizione buy:

24/02/2010 LONG EUR/USD a 1.3797

 

mercoledì 23 febbraio 2011

Set and forget: -94 pips

La prima giornata si è rivelata una vera bastonata, ho chiuso l'operazione di ieri sera a -94 pis:

22/02/2010 SHORT EUR/USD a 1.3650 -> chiusura posizione ad 1.3744 -94 pips

Aperta nuova posizione:

23/02/2010 LONG EUR/USD a 1.3745

 

martedì 22 febbraio 2011

Strategia giornaliera set and forget

E' da un pò di tempo che ho voglia di ricominciare a fare trading ma gli impegni di lavoro mi impediscono di monitorare il forex durante il giorno.
Ho pensato quindi di utilizzare un approccio di tipo set and forget ovvero inserire degli ordini in base a dei criteri definiti e di non guardarli più fino al giorno successivo.

Visto che l'orario migliore per me è dalle 19 alle 20 ho pensato di partire con una strategia molto semplice che subirà dei cambiamenti nel corso del tempo man mano che mi vengono delle idee.

Applicherò la strategia su di un conto demo piattaforma metatrader.
 

sabato 5 febbraio 2011

clouse7575 EA versione 2

La seconda versione del clouse7575 EA introduce una fondamentale modifica al trading system:

  • se la distanza tra le due medie è maggiore di 50 pips si attende il superamento di una delle 2 medie per aprire una posizione
  • se la distanza tra le due medie è minore di 50 pips il prezzo deve superare entrambe le medie prima di aprire una posizione
clouse7575 EA v2 trading system
 

Key Level Stop & Reverse EA versione 3

Questa nuova versione del Key Level Stop & Reverse EA va a sistemare 2 problemi emersi in fase di test:

  • Apertura di nuovi ordini subito dopo la chiusura del precedente senza che si fossero verificati nuovi breakout;
  • Modifica del comportamento della variabile nPips che in precedenza non considerava lo spread.
key level stop reverse ea v3
 

domenica 30 gennaio 2011

La progressione di D'Alembert applicata al Money Management

In questo articolo andiamo ad analizzare una tecnica di money management che sfrutta la progressione di D'Alembert, di seguito un esempio per capire come funziona:

Regole: le posizioni vengono chiuse esclusivamente per il raggiungimento dello stop loss o del take profit impostato in questo caso a 100 pips:
  1. operazione negativa 1 lot = -100 pip = scarto -1
  2. operazione negativa 2 lot = -200 pip = scarto -2
  3. operazione positiva 3 lot = +300 pip = scarto -1
  4. operazione negativa 2 lot = -200 pip = scarto -2
  5. operazione positiva 3 lot = +300 pip = scarto -1
  6. operazione negativa 2 lot = -200 pip = scarto -2
  7. ........

Quello che vogliamo realizzare è un'indicatore che ci fornisca lo scarto attuale in modo da richiamarlo con la funzione iCustom all'interno dei nostri expert advisor in modo da calcolare dinamicamente il numero di lotti da utilizzare in ogni operazione. La chiamata da utilizzare all'interno degli ea sarà la seguente: