Ho fatto un TS sul minifib.
Non è il massimo della vita, ma non è neppure il minimo.
Ciò che mi piace è il metodo.
Ho utilizzato solo il Vmn (Volatility Momentum), però ho sovrapposto il timeframe settimanale con quello giornaliero.
Il timeframe settimanale crea delle finestre di operatività: sul daily, invece, scattano i segnali.
Secondo me, la strada da percorrere è questa: sovrapporre due (o tre) timeframes.
Codice:
// Definizione dei parametri del codice
DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
// Condizioni per entrare su posizioni long
indicator1 = CALL "Volatility Momentum"[20,5](close)
c1 = (indicator1 > 0)
c10 = date > 20040919 and date < 20060716
c11 = date > 20060911 and date < 20070723
c12 = date > 20070730 and date < 20070806
c13 = date > 20090601 and date < 20100201
c14 = date > 20100927 and date < 20101213
c15 = date > 20110103 and date < 20110606
c16 = date > 20120123 and date < 20120416
c17 = date > 20120903 and date < 20130415
c18 = date > 20130422 and date < 20130603
c19 = date > 20130805 and date < 20140804
c20 = date > 20150223 and date < 20150824
c21 = date > 20161107 and date < 20180319
c22 = date > 20180416 and date < 20180528
IF c1 and (c10 or c11 or c12 or c13 or c14 or c15 or c16 or c17 or c18 or c19 or c20 or c21 or c22) THEN
BUY 1 share AT MARKET
ENDIF
// Condizioni per uscire da posizioni long
indicator2 = CALL "Volatility Momentum"[20,5](close)
c2 = (indicator2 < 0)
IF c2 THEN
SELL AT MARKET
ENDIF
// Condizioni per entrare su posizioni short
indicator3 = CALL "Volatility Momentum"[20,5](close)
c3 = (indicator3 < 0)
a10 = date > 20070723 and date < 20070730
a11 = date > 20070806 and date < 20090601
a12 = date > 20100201 and date < 20100927
a13 = date > 20101213 and date < 20110103
a14 = date > 20110606 and date < 20120123
a15 = date > 20120416 and date < 20120903
a16 = date > 20130415 and date < 20130422
a17 = date > 20130603 and date < 20130805
a18 = date > 20140804 and date < 20150223
a19 = date > 20150824 and date < 20161107
a20 = date > 20180319 and date < 20180416
a21 = date > 20180528
IF c3 and (a10 or a11 or a12 or a13 or a14 or a15 or a16 or a17 or a18 or a19 or a20 or a21) THEN
SELLSHORT 1 share AT MARKET
ENDIF
// Condizioni per uscire da posizioni short
indicator4 = CALL "Volatility Momentum"[20,5](close)
c4 = (indicator4 > 0)
IF c4 THEN
EXITSHORT AT MARKET
ENDIF
// Stop e target
Ovviamente, quando il Vmn settimanale cambia, occorre modificare il codice sorgente.
Bisognerebbe provare il metodo anche con timeframes minori (60 minuti e 10 minuti), ma non ho ancora scritto il codice.
Purtroppo occorre controllare tutti gli intervalli temporali e poi riportarli pedissequamente sul codice.
O, almeno, io so scrivere il codice solo così.
Esistono altre possibilità per sovrapporre due timeframes?
Io sono solo all'inizio della programmazione.