Friday 4 August 2017

How To Backtest Trading System


Backtesting Qual è Backtesting Il backtesting è il processo di testare una strategia di trading sui dati storici relativi a garantirne la redditività prima del commerciante rischia di alcun capitale reale. Un trader in grado di simulare il commercio di una strategia per un periodo di tempo adeguato e analizzare i risultati per i livelli di redditività e di rischio. SMONTAGGIO backtesting Se i risultati soddisfano i criteri necessari che siano accettabili per il commerciante, la strategia può essere attuata con un certo grado di fiducia che si tradurrà in profitti. Se i risultati sono meno favorevoli, la strategia può essere modificato, regolato e ottimizzato per ottenere i risultati desiderati, oppure può essere completamente demolito. Una quantità significativa di volumi scambiati nel mercato finanziario di oggi è fatto da commercianti che utilizzano un qualche tipo di automazione computer. Questo è particolarmente vero per le strategie di trading basate sull'analisi tecnica. Backtesting è parte integrante di sviluppare un sistema di commercio automatizzato. Backtesting significativo quando fatto correttamente, backtesting può essere uno strumento prezioso per prendere decisioni sull'opportunità di utilizzare una strategia di trading. Il periodo di tempo campione su cui viene eseguito un backtest su è critica. La durata del periodo di tempo di campionamento dovrebbe essere abbastanza lungo per includere i periodi di condizioni di mercato diverse tra cui uptrends, downtrends e trading range-bound. Esecuzione di un test su un solo tipo di condizione di mercato può produrre risultati unici che non possono funzionare bene in altre condizioni di mercato, che possono portare a conclusioni errate. La dimensione del campione del numero di transazioni nei risultati del test è fondamentale. Se il numero del campione di transazioni è troppo piccolo, il test non può essere statisticamente significativa. Un campione con troppe compravendite nel corso di un periodo troppo lungo può produrre risultati, in cui un numero enorme di trade vincenti COALESCE intorno ad una specifica condizione di mercato o di tendenza che è favorevole per la strategia ottimizzata. Ciò può anche causare un commerciante di trarre conclusioni fuorvianti. : Dire il vero un backtest dovrebbe riflettere la realtà nel miglior modo possibile. costi di negoziazione che potrebbero altrimenti essere considerato trascurabile da parte dei commercianti se analizzati singolarmente possono avere un impatto significativo quando il costo complessivo è calcolato per l'intero periodo di backtesting. Tali costi comprendono le commissioni, si diffonde e lo slittamento, e potrebbero determinare la differenza tra se una strategia di trading è redditizio o meno. La maggior parte dei pacchetti software backtesting includono i metodi per tenere conto di tali costi. Forse la metrica più importante associato con backtesting è il livello strategys di robustezza. Questo si ottiene confrontando i risultati di un test indietro ottimizzato in un periodo di tempo specifico campione (denominato in-campione) con i risultati di un backtest con la stessa strategia e impostazioni in un diverso periodo campione (denominato uscita di-campione). Se i risultati sono altrettanto vantaggioso, allora la strategia può essere ritenuta valida e robusto, ed è pronto per essere implementato in mercati in tempo reale. Se la strategia non riesce a confronto out-of-campione, quindi la strategia ha bisogno di ulteriore sviluppo, o dovrebbe essere abbandonato altogether. Backtesting: Interpretazione Il passato backtesting è una componente fondamentale di un efficace sviluppo commerciale del sistema. Tutto è compiuto ricostruendo, con i dati storici, mestieri che si sarebbero verificati in passato utilizzando le regole definite da una determinata strategia. Il risultato offre statistiche che possono essere utilizzati per valutare l'efficacia della strategia. Utilizzando questi dati, gli operatori possono ottimizzare e migliorare le loro strategie, trovare eventuali difetti tecnici o teoriche, e guadagnare la fiducia nella loro strategia prima di applicarlo ai mercati reali. La teoria di fondo è che qualsiasi strategia che ha funzionato bene in passato è in grado di lavorare bene in futuro, e viceversa, qualsiasi strategia che ha eseguito male in passato, è probabile che scarso rendimento in futuro. Questo articolo prende in esame quali applicazioni vengono utilizzate per backtest, che tipo di dati si ottiene, e come metterlo a utilizzare i dati e gli strumenti di backtesting può fornire un sacco di feedback statistico preziose su un dato sistema. Alcune statistiche backtesting universali includono: utile o la perdita - percentuale di guadagno netto o la perdita. Tempo di telaio - date passate in cui si è verificato prova ing. Universo - Azioni che sono stati inclusi nel backtest. misure di volatilità - Percentuale massima rialzo e ribasso. Medie - percentuale media di guadagno e la perdita media, bar media detenuta. L'esposizione - Percentuale del capitale investito (o esposta al mercato). Rapporti - Vittorie-to-perdite rapporto. Annualizzato ritorno - ritorno percentuale più di un anno. rendimento percentuale in funzione del rischio - rendimento corretto per il rischio. In genere, il software di backtesting avrà due schermi che sono importanti. Il primo permette al trader di personalizzare le impostazioni per il backtesting. Queste personalizzazioni comprendono tutto, dalla periodo di tempo di spese di commissione. Ecco un esempio di un tale schermo in AmiBroker: La seconda schermata è l'attuale rapporto di risultati dei test retrospettivi. Questo è dove si possono trovare tutte le statistiche di cui sopra. Ancora una volta, ecco un esempio di questa schermata in AmiBroker: In generale, la maggior parte di software commerciale contiene elementi simili. Alcuni programmi software di fascia alta includono anche funzionalità aggiuntive per eseguire il dimensionamento posizione automatica, l'ottimizzazione e altre funzioni più avanzate. I 10 Comandamenti Ci sono molti fattori commercianti prestare attenzione a quando sono backtesting strategie di trading. Ecco una lista delle 10 cose più importanti da ricordare, mentre backtesting: Prendere in considerazione le grandi tendenze del mercato nel lasso di tempo in cui è stata testata una determinata strategia. Ad esempio, se una strategia è stata backtested solo 1999-2000, potrebbe non passerai bene in un mercato orso. Spesso è una buona idea di backtest per un periodo di tempo lungo, che comprende diversi tipi di condizioni di mercato. Prendere in considerazione l'universo in cui si è verificato backtesting. Ad esempio, se un sistema ampio mercato viene testato con un universo composto da titoli tecnologici, potrebbe non riuscire a fare bene in diversi settori. Come regola generale, se la strategia è mirata verso un genere specifico di magazzino, di limitare l'universo di questo genere, ma, in tutti gli altri casi, mantenere un grande universo a scopo di test. misure di volatilità sono estremamente importanti per prendere in considerazione nello sviluppo di un sistema di trading. Questo è particolarmente vero per gli account di leveraged, che sono sottoposti a richieste di margini se il loro capitale scende sotto un certo punto. Gli operatori dovrebbero cercare di mantenere bassa volatilità, al fine di ridurre i rischi e consentire più facile la transizione dentro e fuori di un determinato stock. Il numero medio di bar detenuti è molto importante anche per guardare quando si sviluppa un sistema di trading. Sebbene la maggior parte del software di backtesting include spese di commissione nei calcoli finali, questo non significa che si dovrebbe ignorare questa statistica. Se possibile, aumentare il numero medio di bar possedute in grado di ridurre i costi di commissione, e migliorare il rendimento complessivo. L'esposizione è una spada a doppio taglio. Maggiore esposizione può portare a maggiori profitti o le perdite maggiori, mentre è diminuito l'esposizione significa minori profitti o perdite inferiori. Tuttavia, in generale, è una buona idea per mantenere l'esposizione al di sotto 70, al fine di ridurre il rischio e consentire agevole passaggio dentro e fuori di un determinato stock. La statistica medio-gainloss, in combinazione con il rapporto vittorie-per-le perdite, può essere utile per determinare la posizione ottimale dimensionamento e la gestione del denaro utilizzando tecniche come la Kelly Criterion. (Vedere Money Management utilizzando il criterio di Kelly.) Gli operatori possono assumere posizioni più grandi e ridurre i costi di commissione, aumentando i loro guadagni medi e aumentando il loro rapporto vittorie-to-perdite. rendimento annualizzato è importante perché è utilizzato come strumento per riferimento un sistema restituisce contro altre sedi di investimento. E 'importante non solo per esaminare il rendimento annualizzato generale, ma anche di prendere in considerazione il rischio aumentato o diminuito. Questo può essere fatto guardando il rendimento corretto per il rischio, che rappresenta vari fattori di rischio. Prima di un sistema di negoziazione è adottato, esso deve superare tutte le altre sedi di investimento a rischio uguale o inferiore. Backtesting personalizzazione è estremamente importante. Molte applicazioni backtesting hanno ingresso per gli importi delle commissioni, rotonde (o frazionali) lotto dimensioni, spunta dimensioni, i requisiti di margine, i tassi di interesse, ipotesi slittamento, le regole di posizione dimensionamento, regole di uscita dello stesso bar, (finali) fermare le impostazioni e molto altro ancora. P er ottenere i risultati dei test retrospettivi più accurati, i t è importante per regolare queste impostazioni per imitare il broker che verrà utilizzato quando il sistema va in diretta. Backtesting a volte può portare a qualcosa di noto come eccesso di ottimizzazione. Questa è una condizione in cui i risultati di prestazione sono sintonizzati così altamente al passato che sono più come esatte in futuro. E 'generalmente una buona idea per implementare regole che si applicano a tutti gli stock, o un gruppo selezionato di azioni mirate, e non sono ottimizzati nella misura in cui le regole non sono più comprensibili dal creatore sono. Backtesting non è sempre il modo più accurato per misurare l'efficacia di un dato sistema di trading. A volte le strategie che si sono esibiti bene in passato non riescono a fare bene nel presente. I rendimenti passati non sono indicativi di risultati futuri. Assicurarsi di commercio di carta un sistema che è stato con successo backtested prima di andare in diretta per essere sicuri che la strategia si applica ancora in pratica. Conclusione Backtesting è uno degli aspetti più importanti di sviluppo di un sistema di trading. Se creata e interpretata correttamente, può aiutare gli operatori a ottimizzare e migliorare le loro strategie, trovare eventuali difetti tecnici o teorici, così come acquisire fiducia in loro strategia prima di applicarlo ai mercati del mondo reale. Risorse Tradecision (tradecision) - High-end Trading System Development AmiBroker (AmiBroker) - Budget Trading System Development. Back-testare le tue idee di trading Una delle cose più utili che si possono fare nella finestra di analisi è quello di back-testare la vostra strategia di trading su dati storici. Questo può dare informazioni preziose in punti di forza e punti deboli del sistema prima di investire soldi veri. Questa singola caratteristica AmiBroker è in grado di risparmiare un sacco di soldi per voi. Scrivere le regole di trading In primo luogo è necessario disporre di regole oggettive (o meccanica) per entrare e uscire dal mercato. Questo passaggio è la base della vostra strategia ed è necessario pensare a voi stessi quanto il sistema deve corrispondere la vostra tolleranza al rischio, le dimensioni del portafoglio, le tecniche di gestione del denaro, e molti altri fattori individuali. Una volta che avete le vostre proprie regole per la negoziazione si dovrebbe scrivere loro come comprare e vendere le regole in AmiBroker Formula Lanugage (più breve e la copertura se si desidera verificare anche breve di trading). In questo capitolo prenderemo in considerazione molto semplice, lo spostamento trasversale media nel sistema. Il sistema dovrebbe comprare stockscontracts quando vicino prezzo sale sopra 45 giorni di media mobile esponenziale e venderà stockscontracts quando vicino prezzo scende al di sotto di 45 giorni media mobile esponenziale. La media mobile esponenziale può essere calcolato in AFL usando la sua funzione di EMA built-in. Tutto quello che devi fare è specificare l'array di input e il periodo di media, quindi la media mobile esponenziale dei prezzi di chiusura di 45 giorni può essere ottenuta con la seguente dichiarazione: La stretta identificazione si riferisce a built-in matrice tenendo i prezzi degli simbolo attualmente analizzato chiusura . Per verificare se gli stretti croci di prezzo di cui sopra media mobile esponenziale useremo funzione built-in croce: acquistare croce (vicino, ema (vicino, 45)) La dichiarazione di cui sopra definisce una regola buy commerciale. Dà quot1quot o quottruequot quando chiudere croci di prezzo di cui sopra ema (vicino, 45). Poi possiamo scrivere la regola vendita che darebbe quot1quot quando situazione opposta si verifica - vicino croci di prezzo al di sotto ema (chiudi, 45): la vendita incrociata (EMA (vicino, 45), vicino) Si prega di notare che stiamo usando la stessa funzione di cross ma l'ordine inverso di argomenti. Così formula completa per lunghi commerci sarà simile a questa: acquistare croce (vicino, ema (vicino, 45)) vendere croce (EMA (vicino, 45), vicino) NOTA: Per creare nuova formula si prega di aprire Formula Editor utilizzando Analysis-gtFormula Editor Menu, digitare la formula e selezionare Strumenti-gtSend al menu Analysis in editor di formule per il back-testare il sistema è sufficiente fare clic sul pulsante Test Indietro nella finestra di analisi automatica. Assicurarsi di aver digitato nella formula che contiene almeno comprare e vendere regole di negoziazione (come mostrato sopra). Quando la formula è corretta AmiBroker inizia analizzare i simboli in base alle regole di negoziazione e genera un elenco di mestieri simulati. L'intero processo è molto veloce - è possibile eseguire il test di migliaia di simboli in una questione di minuti. La finestra di avanzamento vi mostrerà il tempo di completamento previsto. Se si desidera interrompere il processo si può semplicemente fare clic sul pulsante Annulla nella finestra di avanzamento. Quando il processo è finito l'elenco dei traffici simulati viene mostrato nella parte inferiore della finestra di analisi automatica. (Riquadro Risultati). È possibile esaminare se le comprano e vendono i segnali si sono verificati solo con un doppio clic sul commercio di riquadro Risultati. Questo vi darà segnali prime o non filtrati per ogni bar quando sono soddisfatte le condizioni di acquisto e di vendita. Se si desidera visualizzare solo i singoli frecce commerciali (apertura e chiusura commercio attualmente selezionata) si dovrebbe doppio clic sulla riga tenendo premuto il tasto SHIFT premuto. In alternativa è possibile scegliere il tipo di visualizzazione selezionando la voce appropriata dal menu contestuale che appare quando si fa clic sul riquadro dei risultati con un pulsante destro del mouse. Oltre all'elenco dei risultati è possibile ottenere statistiche molto dettagliate sulle prestazioni del sistema facendo clic sul pulsante Report. Per saperne di più circa le statistiche del rapporto si prega di consultare descrizione finestra del rapporto. Modifica delle impostazioni di test Pagina precedente la prova dei motori a AmiBroker utilizza alcuni valori predefiniti per eseguire il suo compito tra cui la dimensione del portafoglio, la periodicità (dailyweeklymonthly), la quantità di commissione, di tasso di interesse, perdita massima e target di profitto si ferma, il tipo di commerci, i campi dei prezzi e così sopra. Tutte queste impostazioni possono essere modificate dall'utente utilizzando finestra delle impostazioni. Dopo aver modificato le impostazioni si prega di ricordarsi di eseguire nuovamente il test indietro se si desidera che i risultati siano in sintonia con le impostazioni. Ad esempio, per eseguire il test barre settimanali invece di tutti i giorni è sufficiente fare clic sul pulsante Impostazioni selezionare settimanale da casella combinata Periodicità e fare clic su OK. quindi eseguire l'analisi facendo clic su Indietro prova. Riservato nomi delle variabili La tabella seguente mostra i nomi delle variabili riservate utilizzate da Analyser automatico. Il significato e gli esempi sul loro utilizzo sono riportate più avanti in questo capitolo. Permette il controllo importo in dollari o la percentuale di portafoglio che viene investito in commercio (vedi spiegazioni qui sotto) analisi automatica (nuova in 3.9) Fino ad ora abbiamo discusso l'uso abbastanza semplice del tester indietro. AmiBroker, tuttavia supporta molto più sofisticati metodi e concetti che saranno discusse più avanti in questo capitolo. Si prega di notare che l'utente principiante dovrebbe prima giocare un po 'con le tematiche più semplici di cui sopra prima di procedere. Così, quando si è pronti, si prega di dare un'occhiata alle seguenti caratteristiche di recente introduzione del back-tester: a) serie AFL di scripting per gli scrittori formula avanzata b) sostegno rafforzato per brevi Compravendite c) il modo per controllare l'ordine di prezzo di esecuzione del lo script d) vari tipi di fermate a tornare tester e) posizione dimensionamento f) la dimensione del lotto rotondo e spuntare le dimensioni g) i futures conto di deposito h) backtesting AFL host di scripting è un argomento avanzato che è coperto in un documento separato disponibile qui e non lo vorrei discutere in questo documento. restanti funzioni sono molto più facili da capire. Nelle versioni precedenti di AmiBroker, se si voleva sistema di back-test utilizzando compravendite sia lunghe che corte, si potrebbe simulare unica strategia stop-and-reverse. Quando la posizione lunga è stata chiusa una nuova posizione short è stato aperto immediatelly. E 'stato perché comprare e vendere variabili riservate sono stati utilizzati per entrambi i tipi di mestieri. Ora (con la versione 3.59 o superiore) ci sono variabili riservate separati per apertura e chiusura a lungo e breve tondo: acquistare - quottruequot o 1 valore si apre lungo commercio vendita - quottruequot o 1 Valore chiude lungo commerciali a breve - quottruequot o 1 Valore apre copertura commerciale a breve - quottruequot o 1 valore chiude breve commercio Som al fine di back-test di compravendite brevi è necessario assegnare variabili a breve e copertura. Se si utilizza il sistema stop-and-reverse (sempre sul mercato) è sufficiente assegnare vendita a breve e comprare per coprire la copertura short sell acquistare questo simula il modo pre-3.59 versioni lavorato. Ma ora AmiBroker consente di avere regole di negoziazione separati per andare a lungo e per andare a breve, come mostrato in questo semplice esempio: commerci lungo le regole di entrata e di uscita: acquistare croce (CCI (), 100) vendere croce (100, CCI ()) breve mestieri di entrata e uscita regole: cross corto (-100, CCI ()) coprire croce (CCI (), -100) si noti che in questo esempio se CCI è compreso tra -100 e 100 si è fuori dal mercato. Il controllo dei prezzi commercio AmiBroker ora offre 4 nuove variabili riservate per specificare il prezzo al quale comprare, vendere, vengono eseguiti gli ordini brevi e copertura. Questi array hanno i seguenti nomi: buyprice, sellprice, shortprice e coverprice. L'applicazione principale di queste variabili è il controllo prezzo commerciale: BuyPrice IIF (DAYOFWEEK () 1, HIGH, CLOSE) il Lunedi comprare a alta, altrimenti acquistare su una stretta Così si può scrivere il seguente per simulare reali di stop-ordini: BuyStop. La formula per il livello di arresto buy SellStop. La formula per il livello di arresto vendere se in qualsiasi momento durante i prezzi al giorno salgono sopra il livello del buystop (highgtbuystop) l'ordine di acquisto si svolge (a buystop o basso a seconda di quale sia superiore) Acquista Croce (alta, BuyStop) se in qualsiasi momento durante i prezzi al giorno scendono sotto il livello del sellprice (basso sellstop lt) l'ordine di vendita si svolge (ad sellstop o alto se inferiore) collocare Croce (SellPrice, sellStop) BuyPrice max (BuyStop, low) assicurarsi prezzo di acquisto non inferiore a bassa SellPrice min (sellStop, high) accertarsi prezzo non superiore ad alta si prega di notare che i preset AmiBroker buyprice, sellprice, shortprice e matrice coverprice variabili con i valori definiti nel sistema di finestra delle impostazioni di test (vedi sotto) vendere, in modo da poter, ma non avete bisogno di definirli nella formula. Se non li definiscono AmiBroker funziona come nelle vecchie versioni. Durante back-testing AmiBroker controllerà se i valori assegnati a buyprice, sellprice, shortprice, coverprice inserirsi in alta gamma bassa di data bar. In caso contrario, AmiBroker regolerà a prezzo elevato (se il valore prezzo dell'array è superiore a quello alto) o per il prezzo basso (se il valore prezzo dell'array è inferiore a quello basso) obiettivo di profitto si ferma Come si può vedere nella foto sopra, nuove impostazioni per fermate obiettivo di profitto sono disponibili nella finestra delle impostazioni di test del sistema. fermate obiettivo di profitto vengono eseguiti quando il prezzo elevato per un dato giorno exceedes il livello di arresto che può essere dato in percentuale o punto di aumento del prezzo di acquisto. Per impostazione predefinita arresti sono eseguiti al prezzo che si definisce come serie prezzo di vendita (per lunghi commerci) o una matrice prezzo di copertina (per brevi trades). Questo comportamento può essere modificato utilizzando quotExit in funzione stopquot. quotExit in funzione stopquot Se si contrassegna quotExit a scatola stopquot nelle impostazioni verranno eseguiti gli arresti a livello di arresto preciso, vale a dire se si definisce profitto fermata target a 10 vostra fermata e il prezzo di acquisto è stato di 50 ordine di arresto verrà eseguito a 55, anche se la matrice prezzo di vendita contiene un valore diverso (ad esempio prezzo di chiusura di 56). perdita massima si ferma il lavoro in un modo simile - vengono effettuate quando il prezzo basso per un dato giorno scende sotto il livello di arresto che può essere dato in percentuale o punto di aumento del prezzo di acquisto di questo tipo di arresto viene utilizzato per proteggere i profitti in quanto ascolti il ​​commercio così ogni volta che un valore di posizione raggiunge un nuovo massimo, il trailing stop è posta ad un livello superiore. Quando il profitto scende sotto il livello trailing stop la posizione viene chiusa. Questo meccanismo è illustrato nella figura sottostante (10 trailing stop viene mostrato): un esempio di implementazione a basso livello di arresto Profit-bersaglio in AFL: Acquisto Cross (MACD (), Signal ()) per (i 0 i lt BarCount i) if (priceatbuy 0 Acquista i) BuyPrice priceatbuy i if (priceatbuy GT 0 SellPrice i gt 1.1 priceatbuy) Vendi i 1 SellPrice i 1.1 priceatbuy priceatbuy 0 altro Vendi I 0 Questa è una nuova funzionalità nella versione 3.9. Posizione dimensionamento in backtester è attuato mediante nuova riservato variabile PositionSize ltsize arraygt Ora è possibile controllare importo in dollari o la percentuale di portafoglio che viene investito nel commercio numero positivo definire quantità (in dollari) che viene investito nel commercio, ad esempio: PositionSize 1000 invest 1000 in ogni commercio numeri negativi -100 ..- 1 definire percentuale: -100 dà 100 di dimensioni portafoglio attuale, -33 dà 33 di disposizione patrimoniale per esempio: PositionSize -50 sempre investe solo la metà dell'esempio dimensionamento dinamico corrente del patrimonio netto: PositionSize - 100 RSI () come RSI varia da 0..100 questo si tradurrà in posizione a seconda dei valori RSI - gt bassi valori di RSI si tradurrà in maggiore percentuale investita Se meno di 100 di cassa disponibile è investito quindi l'importo residuo guadagna tasso di interesse come definito nelle impostazioni. C'è anche una nuova casella di controllo nella finestra delle impostazioni AA: quotAllow dimensione della posizione shrinkingquot - questo controlla come backtester gestisce la situazione quando richiesto dimensione della posizione (tramite variabile PositionSize) supera disponibilità liquide: quando questo flag è selezionata la posizione è entrato con la dimensione shinked a cassa disponibile se è selezionata la posizione non viene inserito. Per vedere dimensioni reali di posizione si prega di utilizzare una nuova modalità di rapporto nella finestra delle impostazioni AA: lista quotTrade con prezzi e pos. sizequot Per la fine, ecco un esempio di posizione Tharps ATR-based dimensionamento tecnica codificato in AFL: Acquisto ltyour acquistare formula heregt vendi 0 vendita solo da arresto TrailStopAmount 2 ATR (20) Capitale 100000 IMPORTANTE: Impostare anche nelle Impostazioni: Initial rischio azionario 0.01Capital PositionSize (RiskTrailStopAmount) BuyPrice ApplyStop (2, 2, TrailStopAmount, 1) la tecnica potrebbe essere riassunto come segue: il patrimonio totale per simbolo è 100.000, abbiamo impostato il livello di rischio a 1 del capitale totale. Livello di rischio è definito come segue: se un Trailing Stop su un 50 azionario è, diciamo, 45 (il valore di due ATR contro la posizione), la perdita di 5 è suddiviso in rischio 1000 a dare 200 azioni da acquistare. Quindi, il rischio di perdita è di 1000, ma il rischio di assegnazione è di 200 azioni x 50share o 10.000. Quindi, stiamo attribuendo il 10 del capitale per l'acquisto, ma solo rischiando 1000. (estratto a cura dalla mailing list AmiBroker) di dimensioni molto rotonda e di dimensioni tick Vari strumenti sono negoziati con vari unitsquot quottrading o quotblocksquot. Per esempio è possibile acquistare il numero frazionario di unità di fondo comune, ma non è possibile acquistare il numero frazionario di azioni. A volte è necessario acquistare in 10s o 100s lotti. AmiBroker ora consente di specificare la dimensione del blocco a livello globale e per-simbolo. È possibile definire per-simbolo dimensioni molto rotondo nella pagina Symbol-gtInformation (fig. 3). Il valore di zero significa che il simbolo non ha formato speciale molto rotondo e utilizzerà quotDefault molto sizequot rotondo (impostazione globale) dalla pagina delle impostazioni analisi automatica (fig. 1). Se la dimensione di default è impostato anche a zero significa che il numero frazionario di sharescontracts sono ammessi. È inoltre possibile controllare la dimensione del lotto rotonda direttamente dal vostro formula AFL utilizzando RoundLotSize riservato variabile, ad esempio: Questa impostazione controlla il movimento di prezzo minimo di una data simbolo. Si può definire a livello globale e per-simbolo. Come con la dimensione del lotto rotondo, è possibile definire per-simbolo dimensioni segno di spunta nella pagina di Symbol-gtInformation (fig. 3). Il valore di zero indica AmiBroker utilizzare quotdefault tick sizequot definito nella pagina delle impostazioni (fig. 1) di finestra di analisi automatica. Se la dimensione predefinita zecca è anche impostato a zero vuol dire che non esiste un prezzo minimo di movimento. È possibile impostare e recuperare la dimensione del segno di spunta anche da AFL formula utilizzando TickSize riservato variabile, ad esempio: Si noti che l'impostazione della dimensione tick influisce compravendite uscito dal built-in ferma Andor ApplyStop (). Il backtester presuppone che i dati sui prezzi seguono requisiti di dimensione zecche e non cambia le matrici di prezzi forniti dall'utente. Così dimensioni specificando tick ha senso solo se si sta utilizzando built-in così smette di punti di uscita vengono generati livelli di prezzo quotallowedquot invece di quelli calcolati. Per esempio in Giappone - non si può avere parti frazionarie di yen così si dovrebbe definire ticksize globale a 1, in modo integrato ferma uscire mestieri a livelli interi. impostazione del margine account definisce requisito di margine percentuale per l'intero account. Il valore predefinito di margine di account è 100. Questo significa che è necessario fornire 100 fondi per entrare nel commercio, e questo è il modo in cui backtester lavorato nelle versioni precedenti. Ma ora è possibile simulare un conto di deposito. Quando si acquista a margine si sta semplicemente prendendo in prestito i soldi dal proprio broker di acquistare azioni. Con normativa vigente si può mettere su 50 del prezzo di acquisto delle azioni che si desidera acquistare e prendere in prestito l'altra metà dal vostro broker. Per simulare questo basta inserire 50 nel campo margine di account (vedi fig. 1). Se il vostro capitale intial è impostato su 10000 vostro potere d'acquisto sarà poi 20000 e si sarà in grado di entrare in posizioni più grandi. Si prega di notare che questa impostazioni imposta il margine per l'intero account e non è legato alla negoziazione dei futures a tutti. In altre parole è possibile negoziare titoli sul conto di deposito. casella di controllo quotReverse forze segnale di entrata exitquot alle impostazioni Backtester. Quando è su ON (l'impostazione predefinita) - backtester funziona come nelle versioni precedenti e chiude già positon aperta se viene rilevato nuovo segnale di ingresso in direzione inversa. Se questo switch è OFF - anche in caso di segnale d'inversione backtester mantiene commercio aperto e non si chiude positon fino all'uscita regolare (vendita o il coperchio) viene generato il segnale. In altre parole, quando questo interruttore è spento backtester ignora i segnali brevi durante i lunghi commerci e ignora segnali di compra durante brevi compravendite. quotAllow stessa uscita bar (singola barra commercio) opzione quot alle impostazioni Quando è su ON (le impostazioni di default) - ingresso e di uscita per lo stesso bar è consentito (come nelle versioni precedenti) se è spento - uscita può avvenire a partire dal solo accanto bar (questo vale per i segnali regolari, vi è una regolazione separata per le uscite ApplyStop generati). Commutazione su OFF permette di riprodurre il comportamento di MS backtester che non è in grado di gestire stesse uscite giorno. quotActivate ferma impostazione immediatelyquotThis risolve il problema dei sistemi di controllo che entrano compravendite sul mercato aperto. Nelle versioni precedenti alla 4.09 backtester presume che si stava entrando compravendite sul mercato vicino in modo fermate built-in sono stati attivati ​​a partire dal giorno successivo. Il problema è stato quando si infatti definito prezzo di apertura come il prezzo di entrata commercio - allora stesse fluttuazioni di prezzo giorno non innescano le fermate. C'erano alcune soluzioni pubblicati basati sul codice AFL, ma ora non avete bisogno di usarli. Semplicemente se il commercio su aperta si dovrebbe contrassegnare quotActivate ferma immediatelyquot (fig. 1). Si può chiedere perché non si limitano a controllare la matrice buyprice o shortprice se è uguale al prezzo di apertura. Purtroppo questo non funzionerà. Perché semplicemente perché ci sono giorni in cui doji prezzo di apertura è uguale a chiudere e poi backtester non potrà mai sapere se il commercio è stato immesso al mercato aperto o chiuso. Quindi, abbiamo davvero bisogno di un ambiente separato. quotUse QuickAFLquotQuickAFL (tm) è una funzione che permette una più veloce calcolo AFL in determinate condizioni. Inizialmente (dal 2003) era disponibile solo per gli indicatori, a partire dalla versione 5.14 è disponibile in analisi automatica troppo. Inizialmente l'idea era quella di consentire grafico più veloce ridisegna attraverso il calcolo AFL formula solo per quella parte che è visibile sul grafico. In modo simile, finestra di analisi automatica può utilizzare sottoinsieme di quotazioni disponibili per calcolare AFL, se selezionato parametro 8220range8221 è inferiore 8220All quotationsquot. spiegazione dettagliata su come funziona QuickAFL e come controllarlo, viene fornito in questo articolo della Knowledge Base: amibrokerkb20080703quickafl Si noti che questa opzione non funziona solo in backtester, ma anche in ottimizzazioni, esplorazioni e scansioni.

No comments:

Post a Comment