Indicatore tecnico

Indicatori per Valutare le Strategie di Trading su MetaTrader 4
MetaTrader4
Indicatori per Valutare le Strategie di Trading su MetaTrader 4

Spesso ci siamo chiesti come poter visualizzare in modo chiaro i punti deboli di una certa strategia di trading. E se potessimo vedere anche le statistiche di trading oggettive contemporaneamente, sarebbe davvero fantastico! Esiste un backtester in MT4, ma eseguire un backtest in modalità visuale per ogni modifica all'EA richiede molto tempo. Inoltre, le sue capacità visive sono piuttosto limitate e non consente di testare strategie multi-valuta in modo efficiente. Ho cercato di affrontare tutte queste problematiche e il risultato è questo indicatore open-source per testare visivamente le strategie di trading. Certo, non è possibile creare un indicatore completamente universale per tutti gli scopi, ma il framework attuale può essere facilmente modificato e ampliato per esigenze specifiche (come le strategie multi-valuta). Particolare attenzione è stata dedicata alla gestione dello spread. L'indicatore tiene conto dello spread proprio come avviene nel trading reale e nel backtester di MT4. Se modifichi l'indicatore per i tuoi scopi, dovrai studiare attentamente la gestione dello spread; altrimenti, potresti vedere risultati straordinari su un timeframe M1, mentre in realtà sarebbe un disastro. :-) Come dimostrazione dell'indicatore di test delle strategie, aggiungo un indicatore di trading con una strategia semplice. Le regole della strategia si basano sui crossover delle medie mobili (MA) in relazione all'azione del prezzo, in modo da poter aprire operazioni anche prima che avvengano i crossover, eliminando così il ritardo. È presente anche una strategia di uscita (utilizzando segnali opposti e crossover delle MA lenti in modo inverso), insieme alla gestione dello stop loss tramite una strategia modificata di Chandelier SL. Questo indicatore serve a fornire un campione che può essere esteso per esigenze specifiche, ma alcuni lo trovano addirittura sufficiente per il proprio trading manuale. Il concetto alla base dell'intero sistema Il sistema di indicatori è costruito in modo modulare. Prima di tutto, dobbiamo implementare una strategia di trading all'interno di un indicatore di trading, dove attualmente sono utilizzati due buffer per i segnali di ingresso, due per i segnali di uscita e uno per lo stop loss. Un esempio di tale indicatore con piena funzionalità è l'allegato StrategyIndi_1.0. Possiamo quindi valutare questa strategia con un indicatore di test delle strategie StrategySym_1.0. Se non siamo soddisfatti dei risultati, possiamo semplicemente ottimizzare l'indicatore di trading e vedere i risultati delle modifiche in tempo reale e in modo oggettivo, tramite statistiche. Se vogliamo implementare un EA in un secondo momento, è molto facile farlo, poiché richiamando un indicatore di trading personalizzato otteniamo tutti i segnali di ingresso e uscita, così come i valori SL. Come utilizzare questo sistema e adattarlo alle tue esigenze? Per utilizzare il sistema così com'è, basta copiare entrambi gli indicatori nella cartella MetaTrader\experts\indicators. Assicurati di riavviare il terminale prima di usarli affinché vengano compilati. Ci sono alcune impostazioni che potresti voler modificare; la maggior parte è autoesplicativa, quindi descriverò solo le altre: Parametri di StrategyIndi: ChandBars = 7 numero di barre per la strategia Chandelier SL ChandATRFact = 2.0 fattore per moltiplicare l'ATR a lungo termine, per ottenere la distanza Chandelier RiskPercent = 2.0 rischio in percentuale del saldo disponibile per il calcolo del lotto secondo lo SL iniziale (questo è utilizzato solo per informazioni sul trading manuale) Offset = 10 offset dalle barre sul grafico per posizionare le frecce, in pips a 4 cifre BarsBack = 2000 numero di barre da elaborare, dal passato AlertSound = "alert.wav" file WAV per gli avvisi sonori UseSoundAlert = true se vogliamo avvisi sonori (per il trading manuale) UsePopupAlert = true se vogliamo avvisi in finestra pop-up (per il trading manuale) WriteToLog = false se vogliamo scrivere dettagli di log (per il debug) Parametri di StrategySim MaxLossAtSL = 200.0 quanto denaro (in valuta del conto) siamo disposti a perdere a ciascun SL (per alcuni è più intuitivo rispetto alla percentuale, ma può essere facilmente cambiato) BarsBack = 2000 numero di barre da elaborare per la valutazione della strategia WriteToLog = false se vogliamo scrivere dettagli di log (per il debug) Se stai adattando il sistema alle tue esigenze, dovrai aggiungere all'indicatore StrategySym tutti i parametri dal tuo indicatore StrategyIndi che sono rilevanti per la simulazione. Questi sono utilizzati successivamente nel metodo GetIndiSignals, e dovrai solo inserire valori fissi per altri parametri (come UseSoundAlert). Non è necessario apportare altre modifiche a StrategySim, a meno che tu non voglia utilizzarlo per altri scopi (come strategie multi-valuta). In questo caso, i commenti nel codice e i nomi delle variabili saranno sperabilmente sufficientemente utili. Se hai bisogno di assistenza, saremo felici di aiutarti, basta contattarci all'indirizzo web qui sotto. Con questo sistema, vorrei contribuire all'oggettività nella valutazione delle strategie di trading (per sistemi manuali o EA), dato che gli approcci di marketing attuali sono spesso molto manipolativi e causano a molti principianti di perdere i propri soldi guadagnati con fatica. Saluti, Robert Per qualsiasi commento, programmazione MT4 o consulenze sull'argomento, ti prego di contattarmi all'indirizzo robert [dot] leskovar [at] gmail [dot] com. Il sito web MQLTools nel codice sorgente non è più attivo.

2010.04.01
Market Way: L'indicatore Essenziale per MetaTrader 4
MetaTrader4
Market Way: L'indicatore Essenziale per MetaTrader 4

Introduzione: L'idea di questo indicatore non è nuovissima, ma è comunque un'ottima risorsa per chi opera nel forex. Questo strumento mette in evidenza le differenze tra i prezzi di apertura e chiusura in un determinato periodo, con una linea principale che riassume tutto. Il Market Way: Somma solo le barre ribassiste; Somma solo le barre rialziste; Aggiunge anche una media ponderata per l'intero periodo. Vantaggi: - Combina (importante!) la possibilità di funzionare sia come oscillatore che come indicatore di trend; - Facile da comprendere e interpretare; - Indica buoni punti per movimenti rialzisti o ribassisti; - Mostra la pressione rialzista e/o ribassista, stimando il movimento in punti, essenziale per impostare stop e take profit; - Identifica la presenza di movimenti laterali e la loro intensità (alta o bassa volatilità); - Segnala i livelli di ipercomprato e ipervenduto; - Indica chiaramente la funzione d'onda del movimento dei prezzi, evidenziando le possibilità di divergenza/convergenza; - Consente di decidere sul comportamento futuro dei prezzi e (importante!) di entrare nel mercato usando esclusivamente questo indicatore; - Funziona bene con dati di qualsiasi timeframe e con mercati diversi dal forex; - Filtra i falsi segnali senza necessità di ulteriori filtri di smussamento, mantenendo l'accuratezza della SMA con lo stesso periodo. Svantaggi: - Richiede sempre un periodo di riferimento, il che naturalmente diminuisce l'accuratezza del campione di dati analizzati (problema comune a tutti gli indicatori); - Le possibilità di questo indicatore sono poco studiate. Parametri consigliati: extern int IdMain = 12; // Linea principale (tracciata sui punti del grafico) dell'indicatore, è preferibile (ma non obbligatorio) che sia sempre tra le linee rialziste e ribassiste. extern int IdBull = 12; // Linea rialzista, il cui valore è preferibilmente uguale a quello della linea ribassista e a quella principale. extern int IdBear = 12; // Linea ribassista, il cui valore è preferibilmente uguale a quello della linea rialzista e a quella principale. extern int IdArray = 12; // Valore di smussamento di tutte le linee sul grafico, o le cosiddette SIGNAL lines. Il grafico mostra un istogramma che evidenzia la differenza tra la linea rialzista (barre bianche) e la SMA e la linea ribassista (barre nere) e la SMA. Maggiori dettagli sono disponibili nel codice dell'indicatore. Le impostazioni consigliate sono multipli di 12, e valori divisibili per 3 e 4, con un massimo di 108 e un minimo di 12, eventualmente anche 9 e 7. Questo indicatore nel tester strategie: Questo esempio è per la costruzione di evidenze con l'indicatore. Le operazioni non sono ottimizzate, vengono effettuate all'apertura di una barra, quindi non è necessario testare "ogni tick", si apre una transazione per barra. Timeframe: Daily, strumento: EURUSD, periodo: dal 1999 al 2010. Stop Loss e Profit fissati a 500 punti. Le uscite sono condizionate da un'entrata di transazione opposta. Opzioni dell'indicatore: tutte 12. Lotto: 0,1 continuo. Condizioni di ingresso Long: MainAccumulation1 - MainSMA1 > 0 // se la linea principale è sopra il valore smussato &amp;&amp; BullPressue1 - Point > 0 // se la pressione rialzista è sopra 0 &amp;&amp; BearPressue1 - Point > 0 // se la pressione ribassista è sopra 0 &amp;&amp; MainAccumulation1 - Point > 0 // se la linea principale è sopra 0 Condizioni di ingresso Short: MainAccumulation1 - MainSMA1 < 0 // se la linea principale è sotto il suo valore smussato &amp;&amp; BullPressue1 - Point < 0 // se la pressione rialzista è sotto 0 &amp;&amp; BearPressue1 - Point < 0 // se la pressione ribassista è sotto 0 &amp;&amp; MainAccumulation1 - Point < 0 // se la linea principale è sotto 0 Nota: Le condizioni di uscita sono strettamente opposte. Di seguito, un grafico del cambiamento degli asset (Equity), con una precisione di 5 decimali; come puoi vedere, dopo l'apertura di qualsiasi operazione, l'equity raramente scende sotto -200 punti.

2010.03.30
Indicatore di Trend per Timeframe Superiori - MetaTrader 4
MetaTrader4
Indicatore di Trend per Timeframe Superiori - MetaTrader 4

Descrizione: Questo indicatore mostra il trend complessivo di un timeframe superiore sul grafico attuale (timeframe inferiore) come segue:Se MA_1 &lt; MA_2 &lt; MA_3 &lt; MA_4 nel timeframe superiore, significa che si è stabilito un ordine corretto delle medie mobili e che è in corso un trend ribassista. Sul grafico attuale, apparirà una linea rossa per indicare questa situazione. La linea rossa si basa sull'indicatore PCI (Price Channel Index) e può essere utilizzata come linea di supporto. Se l'indicatore RSI integrato è attivato, ogni volta che l'RSI entra in territorio di ipercomprato, verrà emesso un avviso come segnale che una possibile inversione è più probabile, ovvero il trend del timeframe inferiore riprende il trend complessivo del timeframe superiore. È consigliato entrare in posizione al di sotto della linea di supporto rossa del PCI. Vedi l'immagine di esempio qui sotto.Se MA_1 &gt; MA_2 &gt; MA_3 &gt; MA_4 nel timeframe superiore, si è stabilito un ordine corretto delle medie mobili e che è in corso un trend rialzista. Sul grafico attuale apparirà una linea verde per indicare questa situazione. La linea verde si basa sull'indicatore PCI e può essere utilizzata come linea di resistenza. Se l'indicatore RSI integrato è attivato, ogni volta che l'RSI entra in territorio di ipervenduto, verrà emesso un avviso come segnale che una possibile inversione è più probabile, ovvero il trend del timeframe inferiore riprende il trend complessivo del timeframe superiore. È consigliato entrare in posizione al di sopra della linea di resistenza verde del PCI.Una linea grigia indica che non è presente un trend nel timeframe superiore.Nota: Raccomando di utilizzare le seguenti combinazioni di timeframe:Timeframe Superiore:Timeframe Corrente:Giornaliero &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1 ora4 ore &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 15 minuti1 ora &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 5 minuti5/15 minuti &nbsp; &nbsp; 1 minuto Immagine: Proprietà: extern int Upper_Timeframe = 240; // Timeframe superiore in minuti es. 240 = 4 ore extern int Upper_Timeframe_MA_1 = 10; // MA_1 deve essere la media mobile più veloce extern int Upper_Timeframe_MA_2 = 20; extern int Upper_Timeframe_MA_3 = 50; extern int Upper_Timeframe_MA_4 = 100; // MA_4 deve essere la media mobile più lenta extern bool RSI_Check_On = true; // Controlla le condizioni di RSI IperComprato IperVenduto extern bool RSI_Alert_On = true; // Avviso audio per le condizioni di RSI IperComprato IperVenduto extern int RSI_Period = 12; // Periodo RSI extern int Upper_RSI_Limit = 70; // Limite superiore oltre il quale indica condizioni di ipercomprato extern int Lower_RSI_Limit = 30; // Limite inferiore sotto il quale indica condizioni di ipervenduto extern int PCI_Period = 5; // Periodo PCI. es. 5 imposta la linea di supporto nel trend ribassista al minimo più basso degli ultimi 5 barre extern int PCI_Shift = 1; // Spostamento PCI, meglio impostato su 1 extern double Entry_Buffer = 0.0002; // Aumenta la larghezza del canale PCI di pips specificati. es. abbassa la linea di supporto nel trend ribassista extern color Dot_Color = Blue;

2010.03.26
DemoBufferPattern: L'indicatore per MetaTrader 5 che non puoi perderti
MetaTrader5
DemoBufferPattern: L'indicatore per MetaTrader 5 che non puoi perderti

Se sei un trader e stai cercando un modo per migliorare le tue analisi, lascia che ti parli del DemoBufferPattern. Questo indicatore per MetaTrader 5 combina candele, fractali, zigzag colorato e medie mobili colorate per offrirti un quadro chiaro delle dinamiche di mercato. Il DemoBufferPattern utilizza diversi stili di disegno per rappresentare i dati in modo intuitivo: Candele Colorate Frecce Zigzag Colorato Linee Colorate //+------------------------------------------------------------------+ //| Funzione di inizializzazione del indicatore personalizzato | //+------------------------------------------------------------------+ int OnInit() &nbsp;&nbsp;{ //--- mappatura dei buffer dell'indicatore &nbsp;&nbsp; SetIndexBuffer( 0,P1B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 1,P1B2,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 2,P1B3,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 3,P1B4,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 4,P1BC,INDICATOR_COLOR_INDEX); &nbsp;&nbsp; SetIndexBuffer( 5,P2B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 6,P3B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 7,P4B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 8,P4B2,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 9,P4BC,INDICATOR_COLOR_INDEX); &nbsp;&nbsp; SetIndexBuffer(10,P5B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer(11,P5BC,INDICATOR_COLOR_INDEX); //--- Buffer ausiliari per calcoli intermedi &nbsp;&nbsp; SetIndexBuffer(12,P4M1,INDICATOR_CALCULATIONS); &nbsp;&nbsp; SetIndexBuffer(13,P4M2,INDICATOR_CALCULATIONS); //--- Devi essere sicuro di posizionarli dopo tutti i buffer da visualizzare, altrimenti ... provaci tu! //--- FRECCIA &nbsp;&nbsp; PlotIndexSetInteger(1,PLOT_ARROW,217); &nbsp;&nbsp; PlotIndexSetInteger(2,PLOT_ARROW,218); &nbsp;&nbsp; PlotIndexSetInteger(1,PLOT_ARROW_SHIFT,-iArrowShift); &nbsp;&nbsp; PlotIndexSetInteger(2,PLOT_ARROW_SHIFT,iArrowShift); &nbsp;&nbsp; PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,EMPTY_VALUE); &nbsp;&nbsp; PlotIndexSetDouble(2,PLOT_EMPTY_VALUE,EMPTY_VALUE); //--- ZIGZAG &nbsp;&nbsp; PlotIndexSetDouble(3,PLOT_EMPTY_VALUE,0.0); //--- MA &nbsp;&nbsp; maHandle=iMA(Symbol(),0,ExtPeriod,0,MODE_EMA,PRICE_CLOSE); &nbsp;&nbsp; return(0); &nbsp;&nbsp;} //+------------------------------------------------------------------+ //| Funzione di iterazione del indicatore personalizzato | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const int prev_calculated, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const datetime&amp; time[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; open[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; high[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; low[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; close[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const long&amp; tick_volume[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const long&amp; volume[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const int&amp; spread[]) &nbsp;&nbsp;{ //--- &nbsp;&nbsp; CalcCandles(rates_total,prev_calculated,open,high,low,close); &nbsp;&nbsp; CalcFractal(rates_total,prev_calculated,high,low,P2B1,P3B1); &nbsp;&nbsp; CalcZigzag (rates_total,prev_calculated,high,low,P4B1,P4B2,P4BC,P4M1,P4M2); &nbsp;&nbsp; CalcColorMA(rates_total,prev_calculated,P5B1,P5BC); //--- restituisci il valore di prev_calculated per la prossima chiamata &nbsp;&nbsp; return(rates_total); &nbsp;&nbsp;}

2010.03.25
Indicatore delle Sessioni di Trading per MetaTrader 5
MetaTrader5
Indicatore delle Sessioni di Trading per MetaTrader 5

Questo indicatore si basa sui BUFFER DI RIEMPIMENTO. Non ci sono parametri di input, vengono utilizzate le funzioni TimeTradeServer() e TimeGMT(). È possibile che ci siano imprecisioni negli orari delle sessioni di trading; i valori sono tratti dal primo sito che ho trovato :))Puoi modificare questi valori nel blocco delle costanti, utilizzando il tempo GMT. // Costanti temporali specificate secondo il Greenwich const int&nbsp;&nbsp; AsiaOpen=0; const int&nbsp;&nbsp; AsiaClose=9; const int&nbsp;&nbsp; AsiaOpenSummertime=1;&nbsp;&nbsp; // La sessione asiatica cambia const int&nbsp;&nbsp; AsiaCloseSummertime=10; // dopo il cambio di ora const int&nbsp;&nbsp; EuropaOpen=6; const int&nbsp;&nbsp; EuropaClose=15; const int&nbsp;&nbsp; AmericaOpen=13; const int&nbsp;&nbsp; AmericaClose=22; Hai la possibilità di gestire i cambiamenti di ora per l'ora legale; attualmente è una funzione primitiva realizzata con TimeDaylightSavings(); //+--------------------------------------------------------------------+ // La determinazione dell'ora legale è riservata per calcoli futuri //+--------------------------------------------------------------------+ bool Summertime(datetime time) { &nbsp;&nbsp; if(TimeDaylightSavings()!=0) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return(true); &nbsp;&nbsp; else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return(false); }&nbsp; Quindi, dopo il cambio all'ora legale, tutta la storia cambia orario e viceversa. La prima versione dell'indicatore è stata pubblicata su MQL4.

2010.03.15
Ottimizzazione dell'Indicatore Cross Moving Average per MetaTrader 4
MetaTrader4
Ottimizzazione dell'Indicatore Cross Moving Average per MetaTrader 4

Versione Aggiornata. Leggi la descrizione qui sotto. Credo fermamente nel Cross Moving Average e, da programmatore, sono sempre alla ricerca della soluzione più semplice. Ho trovato una frase che dice "non esistono impostazioni magiche per il Cross MA". Questo indicatore prova molte impostazioni ogni volta che cambia il timeframe, il simbolo o anche ad ogni nuova candela. Funziona analizzando gli ultimi 100 candele circa e scegliendo le impostazioni con il miglior successo. In pratica, misura la distanza tra un segnale corto e uno lungo, come se chiunque avesse fatto trading senza stop loss. Tiene conto dello spread. La finestra inferiore mostra la distanza tra le medie mobili, valori positivi indicano trade long, valori negativi indicano trade short in pips. Utilizzando il "profit oscilator", puoi chiudere un trade in profitto esaminando se i trade corti/lunghi hanno una differenza massima e chiudendo proprio prima del massimo. La linea superiore indica "Profitto oggi con MA 5/19 è 60 pips". L'indicatore o l'utente ha scelto 5 per la MA veloce e 19 per la MA lenta. Il campo di testo successivo mostra i risultati di ieri, seguito dal segnale Long o Short. I trader potrebbero voler aggiungere due medie mobili al grafico e impostarle sui valori forniti. Sto cercando altre raccomandazioni per le MA nella letteratura. Parametri PeriodShort=6; Periodo per la MA veloce. Ignora se l'ottimizzazione è vera. PeriodLong=40; Periodo per la MA lenta. Ignora se l'ottimizzazione è vera. Method=0; Metodo per iMA. Optimize=true; L'indicatore sceglie automaticamente i valori per la MA veloce e lenta. DrawTringles=true; Disegna triangoli nel grafico. MinShortMA=2; MaxShortMA=20; MaxLongMA=100; Valori minimi e massimi per l'ottimizzazione, proverà valori tra 2 e 20 per la MA veloce e 7 a 100 per la MA lenta. StepLongMA=5; StepShortMA=5; Per velocizzare la ricerca, proverà ogni terzo valore. CountOptimize=200; Sta analizzando 200 candele dal passato. Più candele analizzi, più sarà lento; un numero elevato potrebbe anche portare a risultati meno buoni. OptimizeOnNewCandle=false; Avvia ottimizzazione ad ogni nuova candela. Nota: l'ottimizzazione può richiedere tempo e rallentare il terminale. Alarm=true; Suona la campana se si presenta un nuovo segnale. Il passo successivo, voglio creare un Expert Advisor, però mi chiedo ancora come rilevare una tendenza laterale che non dovrebbe essere negoziata con il Cross MA. Fino ad ora, il mio EA basato sul Cross MA ottimizzato a volte genera guadagni eccellenti e li brucia il giorno dopo. Versione Aggiornata Nuove funzionalità: - L'indicatore ora disegna le medie mobili all'interno del grafico; il "profit oscilator" è all'interno di un indicatore diverso (MAProfit2), entrambi comunicano tramite variabili globali. - Supporta i canali MA (vedi ebook su www.vnchanger.org), la media mobile lenta è suddivisa in due linee, una per i valori bassi e una per i valori alti, questo dovrebbe evitare perdite nel mercato laterale. - Invece di testare tutte le combinazioni, può testare determinati intervalli MA trovati nella letteratura. Per farlo, imposta OptimizeAll su false e OptimizeSystems su true. Puoi aggiungere o modificare la tabella dei sistemi. Assicurati di terminare con 0,0,0,0,0,0. extern bool OptimizeAll=false; extern bool OptimizeSystems=true; int Systems[] = {PRICE_MEDIAN,MODE_SMA,50, PRICE_MEDIAN,MODE_SMA,200, PRICE_MEDIAN,MODE_SMA,50, PRICE_MEDIAN,MODE_SMA,100, // Death Cross PRICE_MEDIAN,MODE_SMA,10, PRICE_MEDIAN,MODE_SMA,40, PRICE_MEDIAN,MODE_SMA,13, PRICE_MEDIAN,MODE_SMA,26, PRICE_MEDIAN,MODE_SMA,5, PRICE_MEDIAN,MODE_SMA,10, PRICE_CLOSE,MODE_EMA,5, PRICE_OPEN, MODE_EMA,6, PRICE_MEDIAN,MODE_SMA,3, PRICE_MEDIAN,MODE_SMA,8, 0,0,0,0,0,0}; - Nuove notifiche possono essere fornite come voce; per supportare questo, devi scaricare gspeak, ad esempio da https://www.mql5.com/en/code/8621. Se non vuoi la voce, devi modificare il codice. Rimuovi le righe da #import "speak.dll" fino a #import e decommenta la funzione gSpeak. Grazie all'autore per questa meravigliosa DLL. #import "speak.dll" void gRate(int rate); void gVolume(int rate); void gPitch(int rate); void gSpeak(string text); #import // se non hai (o non vuoi) la speak.dll decommenta questo /* void gSpeak(string x) { } */ Se non rimuovi la voce, dopo un certo profitto potresti iniziare ad amare la voce di "Oncle Sam" che parla. - All'avvio iniziale o al cambio dei parametri, ricorda la candela della prima operazione, questo dovrebbe evitare di ridisegnare le vecchie operazioni con altre diverse. - I triangoli ora hanno tre colori: Verde per i trade long, Rosso per i trade short e Viola per i trade in perdita (long o short). I colori possono essere modificati nel codice sorgente:int ColorLongTrade = MediumSpringGreen; int ColorShortTrade = Red; int ColorBadTrade = Violet; - I passi nell'ottimizzazione MA sono stati impostati su 5. - Il nome interno di questo indicatore è stato cambiato in SMA (Smart Ass ... mostra come dovresti aver fatto trading successivamente). MA Optimizer

2010.03.03
Indicatori di Trading: Scopri il MAD (Moving Average Delta) per MetaTrader 4
MetaTrader4
Indicatori di Trading: Scopri il MAD (Moving Average Delta) per MetaTrader 4

Descrizione: Il MAD, acronimo di Moving Average Delta, calcola la differenza tra due punti di una media mobile. La curva mostra la variazione in Pips. Calcolando il delta tra due punti, possiamo osservare piccole variazioni nella direzione della curva della media mobile che normalmente risultano difficili da individuare. Puoi considerare la curva MAD come se stessi guardando attraverso un microscopio una semplice curva di media mobile. Questo potrebbe aiutarti a prevedere un cambiamento di trend prima che accada, come mostrato nell'esempio che evidenzia l'inizio di un cambiamento di trend da long a short. Pur essendo un indicatore semplice, continuo a fidarmi delle medie mobili, poiché il mercato è ancora sufficientemente lento da richiedere tempo per un cambiamento di trend. Se un trend sta per cambiare, alcuni dei milioni di partecipanti al mercato iniziano a comprare (o vendere), seguiti da sempre più individui. Una curva in discesa (o in salita) inizia a scendere più lentamente, si ferma e cambia direzione. (Mi chiedo come mai nessuno prima abbia realizzato un indicatore di questo tipo) Immagine: L'indicatore MAD Interpretazione: Se la curva MAD è maggiore di 0, la media mobile è in crescita Prima di un cambiamento di trend, la media mobile diventa più piatta e la curva MAD tende verso lo zero Possiamo osservare il massimo rialzo/discesa della media mobile e prevedere un imminente cambiamento di trend Utilizzo: Aggiungi una semplice media mobile al grafico e imposta il periodo in modo che si adatti meglio ai movimenti. Non esistono impostazioni "magiche" per il periodo della media mobile; puoi fare doppio clic sulla linea MA per impostarla a un periodo diverso. Aggiungi l'indicatore MAD al grafico e assegna lo stesso periodo della tua media mobile semplice.

2010.03.02
Primo Precedente 337 338 339 340 341 342 343 344 345 346 347 Successivo Ultimo