Programmazione Excel TS Giorno e Notte (4 lettori)

Skarso

Forumer attivo
allora chiedo scusa evidentemente sono restato molto indietro, ragionavo ancora sull'idea iniziale del TS e sulle dinamiche che portavano al suo funzionamento, sorry

ehmm . . . credo che qui si imponga un supplemento di spiegazione . . . ;)
cosa sia una rolling window o finestra mobile, dovrebbe essere un concetto abbastanza semplice da intuire trattandosi di un numero N di giorni che precedono nel tempo l’ “oggi” cioè il giorno su cui si vuole effettuare una previsione ovvero se è o meno conveniente aprire un trade
come suggerisce il nome, questa finestra si sposta ogni giorno in avanti di un giorno tralasciando nel computo il giorno + lontano
forse meno semplice è capire a cosa serve
allora: quando in un sistema esistono uno o + parametri o variabili incogniti di cui occorre determinare il miglior valore ( io preferisco il termine “stima” . . . ) molti autori + o – autorevoli suggeriscono di dividere il data set ( = intero insieme ) di dati disponibili in 2 parti, una detta “training set” sui cui si stimano i parametri ed un’ altra detta “test set” in cui si fa la validazione degli stessi
orbene questo modo di procedere costituisce uno spreco ( la metà detta training set ) ed anche il test set non assicura che oltre quel punto il mercato sia cambiato ed i valori trovati siano non + ottimali
perché invece non utilizzare tutto o quasi il data set a disposizione ?
di qui nasce l’ idea di fare un “training on the job” cioè una stima continua dei parametri day by day utilizzando gli N giorni + recenti in modo da adattare almeno in parte questi valori ai continui cambiamenti del mercato
è evidente che la stima rolling window si presta ottimamente a stimare parametri quando esistono relazioni causali nei dati abbastanza definite e invece mal si presta a determinare ad es il miglior time span di medie mobili, oscillatori o altre diavolerie perché generalmente queste colgono solo il noise . . .
tuttavia ultimamente Ender mi ha fatto riflettere che anche in questi casi la rolling window potrebbe tornare utile, ad es x stimare il valore di una soglia di volatilità o di turbolenza oltre ( o in certi casi al di sotto ) cui non è conveniente fare operazioni
come al solito se la spiegazione presenta ancora punti oscuri, chiedete pure . . .
 

Imar

Forumer attivo
non sono capace di ben interpretare i report dei programmi "conta - barre" ( e in alcuni casi anche conta - balle . . . :lol: ), in questo sono decisamente "scarso" . . .
trovo anche che sono sovrabbondanti di dati inutili e deficitari di dati importanti come gli indici di performance ( Sharpe, Omega etc ), la skewnwss dei rendimenti dei risultati etc

Per inserire Omega (o qualunque altro indice di performance) nel report del backtest:

[FONT=&quot]http://www.amibroker.com/docs/Houston2.pdf

[/FONT]in particolare slide 18-21.

Per il caffè..... beh.... al momento è nella wish list :D:D.

Un saluto.


PS Piuttosto, chi vuol duplicare il sistema in Excel ed Amibroker deve tenere presente questo:
AmiBroker Knowledge Base 2010 July
Yahoo! Groups
il più delle volte le differenze di arrotondamento sono insignificanti, ma non sempre.
 

wipe out

Nuovo forumer
Purtroppo siete troppo tecnici per me, e, come per il lanciatore del post always, non riesco a seguirvi più, ma mi fido di voi..
:),


spero poi, se simuleremo le trades in paper trading dal system completato, di portare miglio a posteriori, anche se vi sembrerà impossibile, ma lo riterrei invece fattibile
 

Skarso

Forumer attivo
Per inserire Omega (o qualunque altro indice di performance) nel report del backtest:

[FONT=&quot]http://www.amibroker.com/docs/Houston2.pdf[/FONT]

in particolare slide 18-21.

Per il caffè..... beh.... al momento è nella wish list :D:D.

Un saluto.

ciao Angelo, grazie della segnalazione e fatti leggere + spesso . . . ;)
 

Skarso

Forumer attivo
Purtroppo siete troppo tecnici per me, e, come per il lanciatore del post always, non riesco a seguirvi più, ma mi fido di voi..
:),

sono spiacente di non essere riuscito malgrado gli sforzi in lingua italiana di farmi capire . . . :wall:
scusatemi, sono limitato dall’ evoluzione ( v. foto a lato ) e inoltre – nomen est omen – evidentemente sono “scarso” anche nello spiegare . . . :eek:
 

quicksilver

Forumer storico
ehmm . . . credo che qui si imponga un supplemento di spiegazione . . . ;)
cosa sia una rolling window o finestra mobile, dovrebbe essere un concetto abbastanza semplice da intuire trattandosi di un numero N di giorni che precedono nel tempo l’ “oggi” cioè il giorno su cui si vuole effettuare una previsione ovvero se è o meno conveniente aprire un trade
come suggerisce il nome, questa finestra si sposta ogni giorno in avanti di un giorno tralasciando nel computo il giorno + lontano

si fin qui era intuibile l'avevo capito :)
forse meno semplice è capire a cosa serve
allora: quando in un sistema esistono uno o + parametri o variabili incogniti di cui occorre determinare il miglior valore ( io preferisco il termine “stima” . . . ) molti autori + o – autorevoli suggeriscono di dividere il data set ( = intero insieme ) di dati disponibili in 2 parti, una detta “training set” sui cui si stimano i parametri ed un’ altra detta “test set” in cui si fa la validazione degli stessi
orbene questo modo di procedere costituisce uno spreco ( la metà detta training set ) ed anche il test set non assicura che oltre quel punto il mercato sia cambiato ed i valori trovati siano non + ottimali
perché invece non utilizzare tutto o quasi il data set a disposizione ?
di qui nasce l’ idea di fare un “training on the job” cioè una stima continua dei parametri day by day utilizzando gli N giorni + recenti in modo da adattare almeno in parte questi valori ai continui cambiamenti del mercato
è evidente che la stima rolling window si presta ottimamente a stimare parametri quando esistono relazioni causali nei dati abbastanza definite e invece mal si presta a determinare ad es il miglior time span di medie mobili, oscillatori o altre diavolerie perché generalmente queste colgono solo il noise . . .
tuttavia ultimamente Ender mi ha fatto riflettere che anche in questi casi la rolling window potrebbe tornare utile, ad es x stimare il valore di una soglia di volatilità o di turbolenza oltre ( o in certi casi al di sotto ) cui non è conveniente fare operazioni
come al solito se la spiegazione presenta ancora punti oscuri, chiedete pure . . .

ecco questo non l'avevo valutato, ne avevo solo una vaga conoscenza e ora l'ho capito grazie, molto interessante :up:
 

quicksilver

Forumer storico
sono spiacente di non essere riuscito malgrado gli sforzi in lingua italiana di farmi capire . . . :wall:
scusatemi, sono limitato dall’ evoluzione ( v. foto a lato ) e inoltre – nomen est omen – evidentemente sono “scarso” anche nello spiegare . . . :eek:


ma non è vero :) , è che oltre ad un certo punto i discorsi matematico statistici per chi non li ha studiati si fanno piu ostici, ma mica dovete limitarvi per questo o sentirvi inadeguati :up:
 

reef

...
Per inserire Omega (o qualunque altro indice di performance) nel report del backtest:
[FONT=&quot]http://www.amibroker.com/docs/Houston2.pdf
[/FONT]in particolare slide 18-21.

Grazie :up:

molti autori + o – autorevoli suggeriscono di dividere il data set ( = intero insieme ) di dati disponibili in 2 parti, una detta “training set” sui cui si stimano i parametri ed un’ altra detta “test set” in cui si fa la validazione degli stessi
orbene questo modo di procedere costituisce uno spreco ( la metà detta training set ) ed anche il test set non assicura che oltre quel punto il mercato sia cambiato ed i valori trovati siano non + ottimali
perché invece non utilizzare tutto o quasi il data set a disposizione ?

Infatti su Amibroker è stata prevista una tecnica di ottimizzazione piuttosto interessante, detta Walk Forward, dove, dato un range di parametri da ottimizzare, vengono eseguiti cicli di ottimizzazione su un intervallo di tempo (IS), e i parametri vengono verificati sul tempo successivo (OOS). Effettuando n iterazioni progressive si verifica "a colpo d'occhio" la robustezza dei parametri restituiti.
Un po' indietro in questa discussione ho postato alcuni risultati, ma probabilmente questa tecnica non è nota (non la era nemmeno a me fino a pochi mesi fa). :)



1301751820walkfwd2.gif


PS Skarso, fai come me, segui i consigli di ender... ;)
 
Ultima modifica:

ender85

Forumer attivo
Grazie :up:



Infatti su Amibroker è stata prevista una tecnica di ottimizzazione piuttosto interessante, detta Walk Forward, dove, dato un range di parametri da ottimizzare, vengono eseguiti cicli di ottimizzazione su un intervallo di tempo (IS), e i parametri vengono verificati sul tempo successivo (OOS). Effettuando n iterazioni progressive si verifica "a colpo d'occhio" la robustezza dei parametri restituiti.
Un po' indietro in questa discussione ho postato alcuni risultati, ma probabilmente questa tecnica non è nota. :)



1301751820walkfwd2.gif


PS Skarso, fai come me, segui i consigli di ender... ;)

la walk forward con out of sample definita ad un giorno è uguale alla rolling window!
Presto creeremo il motore interno, datemi solo un po' di tempo...
Cmq visto che ci seguono altri programmatori amibroker (anche più bravi di me :up: ) io imbastisco il motore rolling base, dividiamoci i vari indici di performance...
P.S. Reef è stato Skarso a mostrarmi l'esistenza della rolling window, io poi sono andato avanti sia nel come usarla, sia sul cosa usarla. Infine ho creato la rolling window esponenziale e altre diavolerie :D
 

reef

...
P.S. Reef è stato Skarso a mostrarmi l'esistenza della rolling window, io poi sono andato avanti sia nel come usarla, sia sul cosa usarla. Infine ho creato la rolling window esponenziale e altre diavolerie :D

Beh, chapeau ad entrambi.
A Mechanica, come avrete visto, l'argomento dei modelli autoadattativi (alla fine sempre basati su rolling windows, walk forward, o altre diavolerie del genere) era uno degli argomenti clou.
In particolare la demo sui modelli genetici partiva, per l'appunto, da un presupposto del tipo "ti passo 40 algoritmi e i dati fino a ieri e tu dimmi cosa devo fare oggi"... ;)

Per quel poco che posso portare come novizio, mi unisco volentieri al team di sviluppo di plugin/funzioni per Ami, a mo' di training on the job... :)
 

Users who are viewing this thread

Alto