Sunday 24 September 2017

Mdfa Forex


Real-Time Signalextraction (MDFA) e Algorithmic Trading Presentazione tema: trascrizione in tempo reale Signalextraction (MDFA) e Trading algoritmico Presentazione: 1 Real-Time Signalextraction (MDFA) e Trading algoritmico marc. wildizhaw. ch blog. zhaw. chidpsefblog IDP. zhaw. chusri idp. zhaw. chMDFA-XT idp. zhaw. chsef 2 Sfondo ibrida mathecon. Progetti IDP-ZHAW con econ. partner Previsione Assistenza sanitaria (le spese dei costi) (indicatori economici in tempo reale: progetto EURI Eurostat-) Macro Finanza (MDFA-XT, grande hedge fund) Engineering (Telecom, le previsioni di carico) gamma di applicazioni Eclecticdisparate approccio metodologico comune (es) in-house sviluppi: (M) DFA R-pacchetto signalextraction il CRAN 3 Un classico Algorithmic Trading approccio Timing sistema SP500 giornaliera Chiusure MA (200), equamente ponderato 6 Perché Traders frequenti AdoptPrefer filtro Crossings filtro Caratteristiche Perché MDFA blog. zhaw. chidpsefblogindex. phparchives54- Intermezzo-Perché-Do-commercianti-Spesso-Considerare-Crossings-of-Trading-Filter-Pairs. html 8 Filtro Caratteristiche funzione di ampiezza: quale segnale viene estratto Time-shift: Quanto è grande il ritardo 11 Conclusioni Crossing-regole sono (un modo inutilmente ingombrante di attuazione) filtri passa-banda Crossing-regole (passa-banda) hanno piccoli ritardi di tempo Perché MDFA flessibile efficiente in tempo reale (banda passante) progettare veloce e liscio 16 Conclusione umido o evitare tutte massiccia recessione disegnare-bassi in modo efficace Ideale per il rischio investitori - averse (fondi pensione) Trading fondamentale: veramente fuori di campione focus su macro-dati (dati di finanza ignorato) NBER Svantaggio: Texto insufficientemente attivo: difficile giustificare spese di 25 Conclusione frequenze più elevate di negoziazione sono associati con banda passante spostato a destra più flessibile rispetto ai tradizionali filtri incroci più piccoli delaystime sposta 27 Impostazione Totale costi di negoziazione degenerative del 0,3 per ordine (piccolo fondo) lungo solo alcun rischio gratuito tassi di interesse di 33 Conclusioni frequenze di negoziazione più elevati sono associati con lieve riduzione delle prestazioni più grandi draw-down USRI eviterebbe levatoio bassi e quindi le prestazioni migliorerebbe aumento dell'attività di mercato (tasse) Combinazione con possibili filtri (consigliata) USRI sarà disponibile on-line a fine luglio 35 Excel-Tutorial su SEF-Blog blog. zhaw. chidpsefblogindex. php archives65-Real-time - Rilevazione-of-punti di svolta-a-tutorial-Part-I-frat - Square-Error-Norm. htmlblog. zhaw. chidpsefblogindex. php archives65-Real-time-rilevamento-of-punti di svolta-a-Tutorial - Parte-I-frat - Square-Error-Norm. html blog. zhaw. chidpsefblogindex. php archives67-Real-time-rilevamento-of-punti di svolta-a-tutorial-Part-II Sottolineando-tornitura-Points. htmlblog. zhaw. chidpsefblogindex. php archives67-Real-time-rilevamento-of-punti di svolta-a-tutorial-Part-II Sottolineando-tornitura-Points. html 36 Finalità esercizi di yoga a staccarsi dalla main-stream mondo di massima verosimiglianza Prima Blog - ingresso: come tradizionale funziona approccio econometrico Intuitivamente semplice buono (ottimale) prestazioni quadratico medio gente è diventata secondo blog-entry pigro di mentalità: la diagnosi precoce dei punti di svolta è un (forte) esercizio controintuitivo Genera apparentemente (fortemente) Filtro misspecified progetta Warning Learning (Illuminazione) 40 standard approccio econometrico Procedendo: Identificare un modello di serie temporali (spazio ARIMAstate) Estendere la serie dalle previsioni ottimali applicare il filtro simmetrica sulla serie tempo prolungato X-12-ARIMA, TRAMO, STAMP, RS dichiarano: One - Filtro retro è ottimale (media-piazza senso) Assunzione: modello DGPtrue 47 a design apparentemente virtuoso (correlazione Peak) Correlazione tra stima in tempo reale e di ciclo in funzione del ritardo temporale k disegno 57 Conclusioni Apparentemente misspecified è più veloce Smoother (meno falso TP o allarmi) non significa quadrati ottimale molto meglio in un TP-prospettiva 58 da Excel a parametri di filtro MDFA Tweak a mano in Excel Tutorial Carenze di esempio irrealisticamente semplice esercizio di simulazione artificiale in pratica: perturbazioni più complessi segnali eo includere informazioni provenienti da più di una serie temporale (quadro multivariata) dei desideri: un criterio di ottimizzazione formale benvenuto a DFA e MDFA 61 ottimizzazione Criterion (I (0)) ridurre al minimo un (uniformemente) stima superconsistent di un (in modo uniforme) stima efficiente del filtro mean-square errore (personalizzato ) efficienza entra esplicitamente nel design del criterio di ottimizzazione 62 Hai detto Andor medio Periodogramma Periodogramma è un tipico esempio di statistic - colpire stima incoerente di Smoothing densità spettrale (parametrici o non-parametrica) Periodogramma è meravigliosa proprietà statistiche sufficienza (Larry Brethorst) Si può ricavare bei risultati di efficienza formali in tempo reale signalextraction lavorando ad una serie di nuove voci sul blog sul tema di riabilitare in qualche misura - il periodogramma 63 performance (efficienza del univariata DFA) business Survey dati (KOF, FED, 2004,2005 ) X-12-ARIMA, TramoSeats MSE-gain 30 US - ed euro-PIL (2008): CF girando punti previsti dal 1-2 quarti ESI (2006): Dainties TP scoperto 2-3 mesi prima di 64 performance (Efficiency) Facendo affidamento sulle periodogramma TP-filtri vinto NN3 (2007) e NN5 (2008) concorsi di previsione (60 partecipanti) IIF e Università di dati finanziari giornalieri (111) serie storiche mensili Lancaster macro e dati finanziari (111 serie storiche) e hanno sovraperformato vincitore e secondo classificato del prestigioso concorso M3, X-12-ARIMA, Tramo, Previsione-Pro, Autobox, livellamento esponenziale: semplice, Holt, smorzata, reti neurali, l'intelligenza artificiale blog. zhaw. chidpsefblogblog. zhaw. chidpsefblog 66 Controllo del Time delay (personalizzazione) 1: sottolineare il ritardo nella banda passante 1: miglior filtro livello 1: sottolineare il ritardo nella banda passante 1: miglior filtro livello titleControlling il tempo di ritardo (personalizzazione) 1: sottolineare il ritardo nella banda passante 1: miglior filtro livello 67 di personalizzazione: temporizzazione Controllo e la morbidezza forte smorzamento del rumore ad alta frequenza in stop-band più piccoli ritardi nel passa-banda W () è monotona (crescente) e 1 1 titleCustomization: Controllo tempo di ritardo e la scorrevolezza forte smorzamento del rumore ad alta frequenza in stop-band più piccoli ritardi nel passa-banda W () è monotona (crescente) e 1 74 efficienza (Teorema 4.1, Wildi2008, WildiSturm2008) Il termine di errore e T è il più piccolo possibile uniformemente Uniforme efficienza di personalizzazione 75 ottimale (efficiente) Criterio sotto cointegrazione (RANK1) Filtrare Restrizioni sono soddisfatti 76 Prestazioni MDFA Output gap US - ed euro-PIL (2008): CF e multivariata CF punti di svolta previsti dal 1-2 quarti USRI hanno sovraperformato Markov-switching (Chauvet, ChauvetPiger), modelli fattore dinamico (CFNAI), modelli di stato (ADS), Hodrick Prescott (OECD-CLI), Christiano-Fitzgerald SEF-Blog MDFA-XT EURI 77 ATTENZIONE. Questo non è un push-il pulsante APPROCCIO pilota di Formula 1: può essere veloce (Ferrari) e affidabile (Mercedes), ma è necessario modificarlo con cura: FerradesMercearri Filter Design (ZPC) Filtro vincoli (sottolineare frequenza zero) Understandinginterpreting: l'intelligenza 2008-libro: idp. zhaw. chsefidp. zhaw. chsef felice di fornire sostegno dato incentivi finanziari 79 marc. wildizhaw. ch blog. zhaw. chidpsefblog Illustrare questioni metodologiche basandosi su progetti del mondo reale con i partner economici idp. zhaw. chusri reale - Time recessione degli Stati Uniti Indicatore idp. zhaw. chMDFA-XT Sperimentale Trader per MSCI Emerging Markets filtri on-line alla fine di luglio idp. zhaw. chsef Signal Extraction Previsione libri del sito, gli articoli, SoftwareHigh-Frequency Trading finanziario sul Forex con MDFA e R: Un esempio con lo Yen Giapponese Questa ultima voce di Chris è particolare, nel senso che egli si basa sulla mia open source MDFA-pacchetto (piuttosto che sulla iMetrica) per generare segnali di trading, vedere 1. Pertanto, i risultati sono riproducibili. Chris ha fatto un grande sforzo di replica, vedere sotto: Mercoledì 20: ho aggiunto il R-codice come modificato da Chris al fine di procedere alla replica. Quello che segue è Chris8217email, tagliato e incollato dal mio server: quotSo Ho appena completato il tutorial introduttivo a lungo atteso su come costruire segnali di trading utilizzando MDFA e R per i dati ad alta frequenza. There8217s non troppi segreti da nascondere qui, come quello che ho fatto in R con il codice è essenzialmente la stessa routine prendo a costruire i miei segnali di trading a iMetrica (tranne che posso fare cose molto molto molto più veloce nelle latter8230 e ok, c'è sono solo alcuni piccoli salse segrete che utilizzano I8217m e non ancora disposti a fuoriuscire fino I8217m impiegato). Ma per quanto riguarda questo esempio con lo Yen va, tutto (dovrebbe) essere riproducibile a casa utilizzando una versione (leggermente modificato) del codice. Ecco l'articolo 1. Una sfida che ho affrontato nella costruzione di questi esempi è venuto da loro a confronto con i miei risultati che ottengo in iMetrica. Purtroppo, in un primo momento i risultati non erano gli stessi. Dopo essere diventato un po 'frustrato, ho preso l'impegno scrupoloso di scoprire il motivo per cui la mia routine MDFA in C sono diversi dai propri a R. mie sono codificati in un modo molto più ottimizzato ed efficiente per ottenere la massima velocità possibile (grazie ad una ottimizzazione apophenia veloce pacchetto per assemblare matrici e risolvere per coefficienti). Tuttavia, i risultati finali devono ancora essere equivalente. Dopo una giornata di navigazione attraverso entrambi o le nostre implementazioni MDFA, ho scoperto il motivo per cui non sono equivalenti (e li ho cambiato nel codice). Qui ci sono le differenze (che io ricordi) dal mio realizzazione e la tua (come del rilascio di novembre): 8211 il calcolo del DFTS. Per qualche ragione, alla frequenza zero, don8217t utilizza la media dei dati. È appena impostato a zero. Non sono sicuro se hai lasciato questo fuori il caso o di proposito, ma io uso la media. Inoltre, divido i valori DFT dalla costante (pin), dove n è il numero di osservazioni in serie temporali. 8211 Nella definizione del parametro DECAY1, si don8217t sembrano utilizzare la mappatura funzione tan. L'ho fatto. 8211 La differenza più grande è la definizione della funzione smoothing (definita da expweight). In primo luogo, si divide expweight da 2, divido per 10. Non è un grande affare. Il grande affare è questo. la definizione della funzione di potenza spostato è una funzione del valore di frequenza (quindi da 0 a 3.14). La vostra è una funzione della posizione dell'indice valore di frequenza, compreso tra 0 e K. Questo fa una differenza enorme. Preferisco definire la funzione di potenza rispetto al valore di frequenza e non indice. Dopo che ho cambiato questi i risultati sono stati più o meno lo stesso, ma non esatti. Nel guardare la matrice finale (nel risolvere axb per i coefficienti) dopo l'applicazione di regolarizzazione e personalizzazione, sembra che i valori all'interno della matrice A sono fuori ad un fattore di circa 10. La mia intuizione è che le complesse funzioni exp in R e C vengono calcolati leggermente diversa (betterworse precisione, io don8217t so). Quindi I8217m non so se questo è qualcosa we8217ll mai essere in grado di risolvere. Ma I8217m non preoccupato, in quanto i risultati finali sono così vicini. In realtà, è didn8217t intacchi nessuno dei traffici nei miei esempi che spettacolo, che erano gli stessi in iMetrica. E questo è il più importante. In ogni caso, posso inviare la mia versione del codice, se si desidera, in modo che le persone possono scaricarlo per provare gli esempi. Oppure si può prendere in considerazione questi cambiamenti e che li rende permanente nelle future versioni di MDFA. Fatemi sapere, e godere l'articolo. quot Si lavora troppo duro, vecchio mio. I tuoi capelli è stato R-color R-tessitura e R-spazzolatura viene in mente troppo. Tra l'altro, la coerenza è misurato il contrario: iMetrica dovrebbe essere in grado di replicare I-MDFA che è il riferimento. Il mio MDFA-codice come modificato da Chris (vedi sopra commenti) DFT. r. I8217m sempre lavorando con serie incentrata quindi la DFT in frequenza zero è zero (it8217s proporzionale alla media). Chris non sembra funzionare con serie incentrata: la DFT è diverso da zero in freq. zero. I-MDFAnew. r. Sembra che il expweight ampiezza di ponderazione è stato alterato e credo che il termine lambda-decadimento è stato modificato troppo. Si noti che io non modifico la mia ultima versione I-MDFA: le modifiche di cui sopra sono utili se si desidera replicare i risultati Chris8217 (ma restano da mia versione). Per eseguire la replica you8217ll dover richiedere i dati da lui. Lascia un Commento Annulla replyMonthly Archives: febbraio 2013 Eccolo, il nuovo elementi-vademecum (data la lunghezza del documento non è certo una carta più): 9 febbraio: ho aggiunto una nuova sezione 11,9 su revisioni dei dati che si basa su un 2011-carta postato qui 0. Questo problema può essere affrontato dal nuovo quadro cointegrazione perché data-release possono essere collegati a coppie attraverso il vettore di cointegrazione (1, -1). 11 marzo: ho corretto il bug nelle definizioni 23 e 24 (grazie ad uno studente attento). Tutto quello che avreste voluto sapere su (co) l'integrazione e il filtraggio in tempo reale è imballato in sezioni 9 e 11 Oh amerete questo nuovo materiale. It8217s circa universali (tautologiche) Numero-identità, tenendo indipendentemente ipotesi it8217s anche di un risultato statistico singolare, vale a dire superconsistency e it8217s di efficienza. Una battaglia tra il platonico ideale e l'opportunismo Mercantile: indovinare su quale lato I8217m positioned8230 ho una prima bozza degli elementi-carta pronto. Ma holly-golden-mucca: questo era un piuttosto difficile combattere questo nuovo materiale porta a una revisione sostanziale della carta elementi: le vecchie parti rimangono inalterati 8211 sono troppo bello per essere altered8230 8211 ma ho dovuto fornire una notevole quantità di dettagli matematici tecnici, al fine di giustificare la MDFA da un philosophical8217 più profonde (che comprende il mathematical8217) punto di vista. Ho bisogno di tempo per lasciare che le cose stabilirsi-in: quando mi sento ready8217 I8217ll Poste i nuovi elementi-carta. Presto. Molto presto. Oh mio Dio: questo è stato difficile. Se era questo difficile da scrivere, per me, allora sarà difficile da leggere, per you8230 La carta gonfiato di oltre 80 pagine. Sta diventando un book8230 E questo è esattamente la mia intenzione. Dopo il 2005 e il 2008 it8217s tempo per un nuovo libro. L'anno prossimo. E gli elementi-carta sta diventando un libro-progetto. Ginters Buss da Latvian National Bank ha una carta interessante su I-MDFA, vedere 1. E here8217s un collegamento diretto con la carta su SEFBlog:.figure 1: In-campione (osservazioni 1-250) e out-of-sample prestazioni di il segnale di trading costruito in questo tutorial utilizzando MDFA. (Top) Il prezzo registro dello Yen (FXY) a intervalli di 15 minuti ed i traffici generati dal segnale di trading. Qui linea nera è un acquisto (long), il blu è sell (posizione short). (In basso) I rendimenti cumulati (in contanti) generati dal commercio, in percentuale guadagnato o perso. Nel mio precedente articolo sul trading ad alta frequenza in iMetrica sul FOREXGLOBEX. Ho introdotto alcune robuste strategie di estrazione del segnale in iMetrica utilizzando l'approccio del filtro diretta multidimensionale (MDFA) per generare segnali ad alte prestazioni per la negoziazione sul mercato dei cambi e futures. In questo articolo mi prendo una breve congedo-of-assenza dal mio mondo di sviluppare segnali di trading finanziari iMetrica e migrare in una lingua uber-popolare usato in finanza per la sua gamma esuberante di pacchetti, gestione dei dati veloce e la gestione della grafica, e di Naturalmente il fatto che it8217s libero (come nel discorso e birra) praticamente su qualsiasi piattaforma informatica in tutto il mondo. Questo articolo fornisce un tutorial introduttivo sull'utilizzo di R per il trading ad alta frequenza sul mercato FOREX utilizzando il pacchetto R per MDFA (offerto da Herr Doktor Marc Wildi von Bern) e alcune strategie che I8217ve sviluppato per la generazione di segnali di trading finanziariamente solidi. Per questo tutorial, ritengo il secondo esempio riportato nel mio precedente articolo in cui ho progettato un segnale di trading per 15 minuti log-rendimenti dello yen giapponese (dall'apertura campana per la chiusura del mercato EST). Questo ha presentato un po 'nuove sfide di prima, le variazioni di salto close-to-open sono molto più grandi di quelli generati da orarie o giornaliere rendimenti. Ma, come ho dimostrato, queste variazioni più grandi sulla close-to-open prezzo ponevano alcun problema per la MDFA. In realtà, è sfruttato questi salti e fatto grandi profitti da prevedere la direzione del salto. Figura 1 nella parte superiore di questo articolo mostra le in-campione (osservazioni 1-250) e out-of-campione (osservazioni 251 in poi) prestazioni del filtro sarò edificio nella prima parte di questo tutorial. Nel corso di questo tutorial, tento di replicare questi risultati che ho costruito in iMetrica ed espandere su di loro un po 'utilizzando il linguaggio R e l'attuazione del MDFA disponibile qui. I dati che consideriamo sono 15 minuti di log-rendimenti dello yen dal 4 gennaio - 17 gennaio e li ho salvati come file. rdata data dal ldfxyinsamp. Ho una serie esplicativo aggiuntivo incorporato nel file. rdata che I8217m usando per prevedere il prezzo dello Yen. Inoltre, ho anche sarò utilizzando pricefxyinsamp che è il prezzo di log di yen, utilizzato per calcolare le prestazioni (buysells) del segnale di trading. Il ldfxyinsamp verrà utilizzato come i dati in-campione per costruire il segnale di filtro e di trading per FXY. Per ottenere tali dati in modo da poter eseguire questi esempi a casa, e-mail me e I8217ll inviare tutti i file necessari. rdata (l'in-campione e out-of-campione di dati) in un file. zip. Facendo una rapida occhiata ai dati ldfxyinsamp, vediamo log-rendimenti dello yen a ogni 15 minuti a partire da mercato aperto (fuso orario UTC). I dati di riferimento (Yen) è nella prima colonna con le due serie esplicativo (Yen e un'altra attività di co-integrato con il movimento di Yen). gt testa (ldfxyinsamp), 1, 2, 3 2013/01/04 13:30:00 0.000000e00 0.000000e00 0,0 miliardi 2013/01/04 13:45:00 4.763412e-03 4.763412e-03 ,0033,465833 millions 2013/01/04 14:00:00 -8.966599e-05 -8.966599e-05 0,0040635638 2013-01-04 14:15:00 2.597055e-03 2.597055e-03 -0,0008322064 2013-01-04 14:30:00 -7.157556e - 04 -7.157556e-04 ,0020,79219 milioni 2013/01/04 14:45:00 -4.476075e-04 -4.476075e-04 -0,0014685198 Passando, per iniziare la costruzione del primo segnale di negoziazione per lo Yen, cominciamo caricando i dati in il nostro ambiente R, definire alcuni parametri iniziali per la chiamata di funzione MDFA, e quindi calcolare le DFTS e periodogramma per lo Yen. Come I8217ve menzionato nei miei articoli precedenti, la mia strategia step-by-step per la creazione di segnali di trading iniziano sempre da una veloce analisi del periodogramma del bene oggetto di scambio su. Tenendo premuto il tasto per permettono di approfondire le caratteristiche di come i mestieri di attività, il periodogramma è uno strumento essenziale per navigare come si sceglie l'estrattore. Qui, cerco principali picchi spettrali che corrispondono nel dominio del tempo per come e dove il mio segnale attiverà compravendite buysell. La figura 2 mostra il periodogramma dei 15 minuti di log-rendimenti dello yen giapponese durante il periodo di permanenza nel campione da 4 gennaio - 17 gennaio 2013. Le frecce indicano le principali picchi spettrali che cerco e fornisce una guida per come mi definirà la mia funzione. Le linee tratteggiate nere indicano i due tagli di frequenza che io considerare in questo esempio, la prima parte e la seconda. Si noti che entrambi i tagli sono impostati direttamente dopo un picco spettrale, una cosa che consiglio vivamente. Nel trading ad alta frequenza sul forex utilizzando MDFA, come we8217ll vedere, il trucco è quello di cercare il picco spettrale che rappresenta la variazione close-to-open nel prezzo della valuta estera. Vogliamo approfittare di questa picco spettrale come questo è dove si verificheranno i grandi guadagni nel commercio di valuta estera utilizzando MDFA. Figura 2: Periodogramma di FXY (Yen giapponese) con picchi spettrali e due diversi tagli di frequenza. Nel primo esempio consideriamo la frequenza più grande come il taglio per impostandola (destra più riga nella figura del periodogramma). Ho quindi inizialmente impostato la tempestività e parametri di scorrevolezza, e expweight a 0 con l'impostazione di tutti i parametri di regolarizzazione a 0 pure. Questo mi darà un barometro per dove e quanto per regolare i parametri del filtro. Nella scelta della lunghezza del filtro, gli studi empirici più numerosi esperimenti nella costruzione di segnali di trading utilizzando iMetrica hanno dimostrato che una scelta 8216good8217 è ovunque tra il 14 e il 15 del totale la lunghezza in-campione dei dati di serie temporali. Naturalmente, la lunghezza dipende dalla frequenza delle osservazioni dei dati (cioè di 15 minuti, ogni ora, ogni giorno, ecc), ma in generale è molto probabile mai bisogno di più di 14 essendo maggiore della dimensione in-campione. In caso contrario, la regolarizzazione può diventare troppo ingombrante per gestire in modo efficace. In questo esempio, la lunghezza totale in-campione è 335 e quindi a impostare che I8217ll bastone per per il resto di questo tutorial. In ogni caso, la lunghezza del filtro non è il parametro più importante da considerare nella costruzione di buoni segnali operativi. Per una buona selezione robusta della coppia parametri di filtro adeguata serie esplicativo, i risultati del segnale di negoziazione con rispetto, ad esempio, devono difficilmente differire. Se lo fanno, allora la parametrizzazione non è abbastanza robusto. Dopo aver caricato sia i dati di log-ritorno a campione insieme al prezzo registro corrispondente dello Yen per il calcolo delle prestazioni di trading, abbiamo l'procede in R per impostare le impostazioni dei filtri iniziali per la routine MDFA e poi calcoliamo il filtro usando la funzione IMDFAcomp. Ciò restituisce entrambi i coefficienti oggetto imdfaamp possesso, le funzioni di risposta in frequenza, e le statistiche di filtro, con il segnale prodotto per ogni serie esplicativo. Uniamo questi segnali per ottenere il segnale di negoziazione finale nel campione. Tutto questo è tutto fatto in R come segue: Le funzioni di risposta in frequenza risultante del filtro ei coefficienti sono tracciati nella figura sottostante. Figura 3: Le funzioni di risposta in frequenza del filtro (in alto) e coefficienti del filtro (in basso) Si noti l'abbondanza di rumore ancora presenti superato la frequenza di taglio. Questo è addolcito aumentando il parametro scorrevolezza expweight. I coefficienti per ogni serie esplicative mostrano una certa correlazione nel loro movimento come aumentano i ritardi. Tuttavia, la morbidezza e il decadimento dei coefficienti lascia molto a desiderare. Noi rimediare a questo con l'introduzione di parametri di regolarizzazione. Lotto di segnale negoziazione in-campione e le prestazioni in-campione del segnale sono mostrati nelle due figure seguenti. Si noti che il segnale di trading si comporta molto bene in-campione. Tuttavia, le apparenze ingannano. Questa performance stellare è dovuto in gran parte a un fenomeno di filtraggio chiamato overfitting. Si può dedurre che overfitting è il colpevole qui semplicemente guardando il nonsmoothness dei coefficienti insieme al numero di gradi di libertà congelato, che in questo esempio è di circa 174 (su 174), troppo alto. Vorremmo ottenere questo numero a circa la metà della quantità totale di gradi di libertà (numero di serie esplicativo x L). Figura 4: Il segnale di trading ei dati di log-ritorno dello Yen. Le prestazioni in-campione di questo filtro dimostra il tipo di risultati che vorremmo vedere dopo l'applicazione di regolarizzazione. Ma ora arriva per gli effetti che fa riflettere di overfitting. Applichiamo questi coeffcients filtro a 200 osservazioni di 15 minuti dello yen e la serie esplicativo dal 18 gennaio al 1 febbraio 2013 e confrontare con le caratteristiche in-campione. Per fare questo in R, per prima cosa caricare i dati out-of-sample nell'ambiente R, e quindi applicare il filtro per i dati out-of-sample che ho definito come xout. Il grafico riportato in Figura 5 mostra il segnale di negoziazione out-of-sample. Si noti che il segnale non è così liscia come nel campione. Superamento dei dati in alcune aree è ovviamente presenti. Anche se le caratteristiche overfitting out-of-campione del segnale non sono terribilmente sospetto, non mi fido di questo filtro per produrre rendimenti stellari nel lungo periodo. Figura 5. filtro applicato al 200 15 osservazioni minuti di Yen out-of-sample per produrre segnale di negoziazione (in blu) A seguito della precedente analisi della soluzione quadratico medio (nessuna personalizzazione o regolarizzazione), che ora procede a ripulire il problema di overfitting che era evidente nei coefficienti insieme a rabbonire il rumore nelle stopband (frequenze dopo). Al fine di scegliere i parametri per la levigatura e la regolarizzazione, un approccio è quello di applicare prima il parametro scorrevolezza prima, in modo generale, smussare i coefficienti, mentre in qualità di un 8216pre8217-regolarizzatore, e poi avanzare alla selezione di adeguati controlli di regolarizzazione. Nel guardare i coefficienti (Figura 3), possiamo vedere che una discreta quantità di smoothing è necessario, con solo un leggero tocco di decadenza. Per selezionare questi due parametri in R, una possibilità è quella di utilizzare l'ottimizzatore Troikaner (trovato qui) per trovare una combinazione adeguata (Ho un segreto approccio algoritmico salsa ho sviluppato per iMetrica per la scelta di combinazioni ottimali di parametri dato un estrattore e un indicatore di performance , anche se it8217s lunghe (anche in GNU C) ed ingombranti da usare, così io di solito preferisco la strategia discusso in questo tutorial). In questo esempio, ho cominciato impostando la lambdasmooth al 0,5 e il decadimento a (.1, .1) insieme ad un parametro expweight morbidezza impostato a 8.5. Dopo aver visto i coefficienti, è ancora abbastanza wasn8217t scorrevolezza, quindi ho proceduto per aggiungere più raggiungendo infine .63, che ha fatto il trucco. Ho poi scelto lambda per bilanciare gli effetti della expweight smoothing (lambda è sempre l'ultimo parametro tweaking resort). La figura 6 mostra la funzione di risposta in frequenza risultante per entrambe le serie esplicativa (Yen in rosso). Si noti che il più grande picco spettrale trovato direttamente prima la frequenza di taglio a che viene enfatizzato e leggermente addolcito (valore vicino a 0,8 invece di 1,0). Gli altri picchi spettrali sotto sono presenti anche. Per i coefficienti, quel tanto che basta levigante e di degrado è stato applicato per mantenere il ritardo, ciclico, e la struttura dei coefficienti intatte correlati, ma ora hanno un aspetto molto più bello nella loro forma levigata. Il numero di gradi di libertà congelato è stato ridotto a circa 102. Figura 6: Le funzioni di risposta in frequenza ed i coefficienti dopo regolarizzazione e livellamento sono state applicate (in alto). I coefficienti lisciato con lieve decadimento alla fine (in basso). Numero di gradi di libertà è congelato circa 102 (su 172). Nonché dal miglioramento gradi Freezed di libertà e nessuna apparente caos di overfitting, applichiamo questo filtro out-of-campione al 200 out-of-campione osservazioni al fine di verificare il miglioramento della struttura dei coefficienti del filtro (mostrato sotto Figura 7). Si noti l'enorme miglioramento nelle proprietà del segnale commerciale (confronto con la Figura 5). Il superamento dei dati è essere eliminato e la scorrevolezza complessiva del segnale è notevolmente migliorata. Ciò è dovuto al fatto che we8217ve sradicato la presenza di overfitting. Figura 7: Out-of-sample segnale di trading con regolarizzazione. Con tutte le indicazioni di un filtro dotato esattamente le caratteristiche di cui abbiamo bisogno per la robustezza, che ora applichiamo il segnale di trading sia in-campione e fuori dal campione per attivare i mestieri buysell e vedere le prestazioni del conto trading in valore in contanti. Quando il segnale incrocia sotto zero, che vendiamo (entra posizione corta) e quando il segnale sale sopra lo zero, abbiamo acquistare (entra posizione lunga). La trama superiore della Figura 8 è il prezzo di registro dello Yen per gli intervalli di 15 minuti e le linee tratteggiate rappresentano esattamente dove i traffici generati segnali di trading (zero crossing). Le linee tratteggiate nere rappresentano un acquisto (posizione long) e le linee blu indicano una vendita (e posizione corta). Si noti che il segnale previsto tutti i salti vicino da aprire per lo Yen (in parte grazie alla serie esplicativo). Questo è esattamente ciò che saremo impegnati per quando aggiungiamo regolarizzazione e personalizzazione al filtro. Il conto di cassa dei commerci nel periodo in-campione viene mostrato sotto, dove i costi di transazione sono stati fissati a 0,05 per cento. In-campione, il segnale ha guadagnato circa il 6 per cento in 9 giorni di negoziazione e un rapporto di successo commerciale il 76 per cento. Figura 8: In campioni prestazioni del nuovo filtro e traffici generati. Ora, per l'ultima prova per vedere quanto bene il filtro svolge nella produzione di un segnale di trading vincente, abbiamo applicato il filtro al 200 15 minuti di out-of-campione di osservazione dello Yen e la serie esplicativo da gennaio 18-01 febbraio e rendere commerci in base al passaggio per lo zero. I risultati sono riportati di seguito nella figura 9. Le linee nere rappresentano le compra e linee blu i Sells (pantaloncini). Si noti il ​​filtro è ancora in grado di predire il prossimo al Salti aperti anche out-of-campione grazie alla regolarizzazione. Il filtro soccombe solo tre o perdite piccoli a meno di 0,08 per cento ciascuno tra le osservazioni di 160 e 180 e una piccola perdita all'inizio, con una percentuale di successo del commercio out-of-sample che colpisce il 82 per cento e un ROI di poco più di 4 per cento rispetto l'intervallo di nove giorni. Figura 9: Out-of-campione di prestazioni del filtro regolarizzato su 200 out-of-campione di 15 minuti rendimenti dello yen. Il filtro ha raggiunto il 4 per cento del ROI sulle 200 osservazioni e un rapporto commerciale di successo 82 per cento. Confrontare questo con i risultati ottenuti nel iMetrica utilizzando le stesse impostazioni dei parametri MDFA. In Figura 10, sia della a-campione e out-of-sample prestazioni sono mostrati. La performance è quasi identico. Figura 10: In-campione e out-of-sample prestazioni del filtro Yen in iMetrica. Quasi identica prestazione ottenuta in R. Ora prendiamo una pugnalata a produrre un altro filtro di negoziazione per lo Yen, solo che questa volta vogliamo individuare solo le frequenze più basse per generare un segnale di trading che commercia meno spesso, cercando solo i cicli più grandi. Come con le prestazioni del filtro precedente, abbiamo ancora desideriamo indirizzare le frequenze che potrebbero essere responsabili per i grandi variazioni vicino da aprire nel prezzo di yen. Per fare questo, selezioniamo il nostro taglio di essere che effettivamente mantenere intatta nella banda passa-basso dei più grandi tre picchi spettrali. Per questo nuovo filtro, manteniamo le cose semplici continuando ad utilizzare gli stessi parametri di regolarizzazione scelti nel filtro precedente dato che sembrava di produrre buoni risultati out-of-campione. I parametri di personalizzazione e expweight tuttavia devono essere adeguate per tenere conto di nuove esigenze di soppressione del rumore nel stopband e le proprietà di fase nella banda passante più piccolo. Così ho aumentare il parametro smoothing e diminuisce il parametro tempestività (che riguarda solo la banda passante) per tenere conto di questo cambiamento. Le nuove funzioni di risposta in frequenza e coefficienti del filtro passa-basso per questo progetto più piccolo Di seguito sono riportati in Figura 11. Si noti che il secondo picco spettrale è rappresentato e solo leggermente addolcito sotto le nuove modifiche. I coefficienti hanno ancora la scorrevolezza notevole e la decadenza ai grandi ritardi. Figura 11: funzioni di risposta in frequenza dei due filtri e loro coefficienti corrispondenti. Per testare l'efficacia di questo nuovo design Frequency Trading inferiore, applichiamo i coefficienti del filtro al 200 out-of-campione osservazioni dei 15 minuti di Yen log-rendimenti. The performance is shown below in Figure 12. In this filter, we clearly see that the filter still succeeds in predicting correctly the large close-to-open jumps in the price of the Yen. Only three total losses are observed during the 9 day period. The overall performance is not as appealing as the previous filter design as less amount of trades are made, with a near 2 percent ROI and 76 percent trade success ratio. However, this design could fit the priorities for a trader much more sensitive to transaction costs. Figure 12: Out-of-sample performance of filter with lower cutoff. Conclusion Verification and cross-validation is important, just as the most interesting man in the world will tell you. The point of this tutorial was to show some of the main concepts and strategies that I undergo when approaching the problem of building a robust and highly efficient trading signal for any given asset at any frequency. I also wanted to see if I could achieve similar results with the R MDFA package as my iMetrica software package. The results ended up being nearly parallel except for some minor differences. The main points I was attempting to highlight were in first analyzing the periodogram to seek out the important spectral peaks (such as ones associate with close-to-open variations) and to demonstrate how the choice of the cutoff affects the systematic trading. Here8217s a quick recap on good strategies and hacks to keep in mind. Summary of strategies for building trading signal using MDFA in R: As I mentioned before, the periodogram is your best friend. Apply the cutoff directly after any range of spectral peaks that you want to consider. These peaks are what generate the trades. Utilize a choice of filter length no greater than 14. Anything larger is unnecessary. Begin by computing the filter in the mean-square sense, namely without using any customization or regularization and see exactly what needs to be approved upon by viewing the frequency response functions and coefficients for each explanatory series. Good performance of the trading signal in-sample (and even out-of-sample in most cases) is meaningless unless the coefficients have solid robust characteristics in both the frequency domain and the lag domain. I recommend beginning with tweaking the smoothness customization parameter expweight and the lambdasmooth regularization parameters first. Then proceed with only slight adjustments to the lambdadecay parameters. Finally, as a last resort, the lambda customization. I really never bother to look at lambdacross. It has seldom helped in any significant manner. Since the data we are using to target and build trading signals are log-returns, no need to ever bother with i1 and i2. Those are for the truly advanced and patient signal extractors, and should only be left for those endowed with iMetrica If you have any questions, or would like the high-frequency Yen data I used in these examples, feel free to contact me and I8217ll send them to you. Until next time, happy extracting 8220Taking a quick glance at the ldfxyinsamp data, we see log-returns of the Yen at every 15 minutes starting at market open (time zone UTC). The target data (Yen) is in the first column along with the two explanatory series (Yen and another asset co-integrated with movement of Yen).8221 So in your file in input you use the log(close-returns) twice (col1 and 2) and a another asset Can you tell me more about this another asset cointegred. how you find it While it8217s not so obvious to determine a set of explanatory variables that will improve signal (and trading) performance, I developed a tool called fundamental frequency component analysis that helps me choose series with strong lag s correlations at certain frequencies I8217m interested in. The method seems to work pretty well so far in my experience. Thanks Chris, have you planned other thread in the coming weeks Yes, I have many new ideas for articles, and will be writing one soon. I8217ve been busy the past couple months improving the methodology even more, making it even more robust for financial trading. The problem is I start to give away too many of my secrets and will eventually lose my competitive advantage, so I need to remain a bit cryptic What your favorites time frame. 15 mins i think 15 minutes is a good range, the lower the frequency the better and more robust the signal will be. However, in practice I8217m currently using 5 min returns with a proprietary trading firm in Chicago on Index Futures. You filtre the time in your data. You trade only of 13:30pm until 20pm You overnight trade

No comments:

Post a Comment