Visualizzazione Ibrida
-
08-12-13, 15:21 #1
- Data Registrazione
- Dec 2009
- Messaggi
- 813
-
08-12-13, 21:21 #2
Ciao, bravo CIVT, ti confermo che anche io in real paper non ho avuto grosse performance come invece dava il BT.
Se posso da domani provo a testare il tuo nuovo signal su qualche sottostante diverso dal Bund e vediamo che cosa succede. Mi associo ai complimenti per il lavoro svolto da te e da tutti gli altri che postano i loro studi/lavori. A volte guardo l'ora dei post e penso che effettivamente il "fenomeno" BeeTrader sia una cosa che coinvolge al punto che non ci si accorge di quanto tempo è passato da quando si è acceso il pc.
-
17-12-13, 23:19 #3
Ho aggiunto al CCI il Followup.
Con 3000 candele Unicredit a 5 minuti per i soliti 4000 pezzi il back teste da questo:
-
18-12-13, 00:00 #4
ok Hawking, adesso quello che dovresti fare è verificare se con l'ottmizzazione che hai fatto non sei andato in overfitting ovvero se non hai fatto altro che modellare il rumore, quindi come verifica dovresti aggiungere altre 3000 candele e vedere se la curva dell'equity del secondo campione conserva la stessa pendenza in tal caso sei sulla buona strada.
ApoUltima modifica di Apocalips; 18-12-13 alle 00:02
....non si desidera ciò che è facile ottenere (Ovidio)....
-
18-12-13, 11:24 #5
buy
INPUTS: @periods(11), @matype(3), @lowMark(-61), @highMark(90), @trailStop(100), @trailPercent(1), @stopLoss(390), @followup(98),@followdwn(-97)
SET TRAILING_STOP = @trailStop
SET TRAILING_PERCENT = @trailPercent
SET STOP_LOSS = @stopLoss
SET C = CCI(@periods, @matype)
SET SALITA = FOLLOWME()>= @followup
SET cond = CROSSOVER(C, @lowMark)AND SALITA
#PRINT(C)
#PRINT(cond)
cond
sell
SET C = CCI(@periods, @matype)
SET DISCESA = FOLLOWME() <= @followdwn
CROSSOVER(@highMark, C)AND DISCESA
Grazie del consiglio APO, pero' non credo di poter avere cosi tanti dati .
Se qualcuno vuole provare a dare una mano sopra c'e' il signal, che magari puo' anche essere migliorato.
-
18-12-13, 12:35 #6
Come temevo sei incappato nell' overfitting ( brutta bestia !!)
Ho condotto un test su 6000 barre divise in 2 periodi:
la parte di destra del grafico ( in sample) è quella su cui hai ottimizzato i parametri, la parte di sinistra ( out of sample) è lo storico che simula una situazione futura sconosciuta al sistema. Come vedi c'è un evidente decadimento delle prestazioni il che significa che hai iperottimizzato i numerosi parametri e quindi avrai scarse probabilità di ottenere buoni risultati in real
Allegato 13361
ApoUltima modifica di Apocalips; 18-12-13 alle 12:38
....non si desidera ciò che è facile ottenere (Ovidio)....
-
18-12-13, 15:31 #7
Accidenti , qui non si finisce mai di imparare.
Ti ringrazio per avermi chiarito anche questo aspetto che avevo incoscentemente sottovalutato.
Messa giu' cosi' pero' se da una parte ti salva da batoste colossali, dall'altra mi sgomenta un po' in quanto mi sembra che il momento di andare in real si allontana sempre piu'.
Per carità non è che l'ha ordinato il dottore, oltretutto faccio un altro mestiere per mangiare, ma credo che tutti quelli che scrivono e leggono su queste pagine abbiano un certo prurito al dito e vogliano clikkare in real, (parlando di signal e Bee Trader).
Sembra sempre piu' un azzardo, anche quando la equity ti soddisfa.
Grazie APO probabilmente mi hai salvato da un disastro.(Reale).A buon rendere.
A questo punto pero' a me sorge il dubbio che ogni volta che ottengo un signal che pare funzioni, in realtà ci sia dietro una brutta incognita. Ok bisogna fare il front test con almeno un centinaio di trade soddisfacenti come ha scritto Tiziano, ma questo implica un dispendio di tempo incredibile. Nel front test devono passare i giorni, forse i mesi....e se poi il signal non funziona???
Rifare altro signal, rifare front test, ripassano altri giorni, forse mesi....ma non c'e' un modo piu' veloce???
Beh pero' una certezza c'e': nessuno a mai detto o scritto che sia semplice e facile...e anche il tuo post precedente lo dimostra.
-
18-12-13, 16:39 #8
- Data Registrazione
- Dec 2009
- Messaggi
- 813
Ottimo APO! Vedo che sei riuscito a reperire uno storico decente! Io avrei questo TS da verificare sul BUND con TF5 minuti per chi hai voglia di provarlo, ho ottimizzato il minimo indispensabile e tolto il trailing profict, non metto le performance perchè l'ho testato su uno storico ridotto per ovvi motivi...
BUY
INPUTS: @exitBars(4), @SignalExit(17), @TRIXperiods(14), @TakeProfict(100), @StopLoss(200) INPUTS: @SMA(20), @EMA(20), @EMAtrend(45) #@TrailStop(100), @TrailPerc(10) #SET TRAILING_STOP = @TrailStop #SET TRAILING_PERCENT = @TrailPerc SET TAKE_PROFIT = @TakeProfict SET STOP_LOSS = @StopLoss SET REQUIRED_BARS = 250 SET T = TRIX(CLOSE, @TRIXperiods) SET T1 = REF (T,1) SET T2 = REF (T,2) SET EMAtrend = ExponentialMovingAverage(CLOSE, @EMAtrend) SET EMAsignal = ExponentialMovingAverage(CLOSE, @EMA) SET SMAsignal = SimpleMovingAverage(CLOSE, @SMA) SET MMsignal = IF(EMAsignal < SMAsignal, IF(SMAsignal < EMAtrend, 1, 0), 0) T< 0 AND T> T1 AND T1< T2 AND MMsignal = 1
SELL
SET REQUIRED_BARS = 250 SET T = TRIX(CLOSE, @TRIXperiods) SET T1 = REF (T,1) SET T2 = REF (T,2) SET EMAtrend = ExponentialMovingAverage(CLOSE, @EMAtrend) SET EMAsignal = ExponentialMovingAverage(CLOSE, @EMA) SET SMAsignal = SimpleMovingAverage(CLOSE, @SMA) SET MMsignal = IF(EMAsignal > SMAsignal, IF(SMAsignal > EMAtrend, 1, 0), 0) T> 0 AND T< T1 AND T1> T2 AND MMsignal = 1
EXIT LONG
SET SignalLine = LR(CLOSE, @SignalExit) # Usiamo il LASTIF che misura il numero di barre da quando la SignalLine è verde SET barre = LASTIF(SignalLine > REF(SignalLine, 1)) # barre > 3 significa che le ultime 2 barre la SignalLine e' stata verde ed anche # la Slope della SignalLine corrente è negativa SET Exit = barre > @exitBars AND LinearRegressionSlope(CLOSE, @SignalExit) < 0 Exit
EXIT SHORT
SET SignalLine = LR(CLOSE, @SignalExit) # Usiamo il LASTIF che misura il numero di barre da quando la SignalLine è rossa SET barre = LASTIF(SignalLine < REF(SignalLine, 1)) # barre > 3 significa che le ultime 2 barre la SignalLine e' stata verde ed anche # la Slope della SignalLine corrente è positiva SET Exit = barre > @exitBars AND LinearRegressionSlope(CLOSE, @SignalExit) > 0 Exit