Im cercando di tradurre un indicatore da MQL4 (lingua Metatrader) per Matlab. Il codice di bande di Bollinger è il seguente: la documentazione iBands () elenca gli ingressi 8 come: capisco tutti questi tranne bandsshift e lo spostamento. Domanda: Se Bar è l'intera gamma dei dati, perché il i1 non crea un errore di gamma Per quanto posso dire, questo è il codice per un periodo di 20, 2 deviazione standard Bollinger Band. Per un dato intervallo di tempo, sono la banda di Bollinger valori ad essi associati i valori calcolati per l'intervallo di tempo precedente (da qui il 1 dopo il quarto comma) Che cosa significa la i1 fare allora dato questo codice, come vorrei implementare in MATLAB Il mio tentativo, con questo movimento deviazione standard e questo media mobile: non penso che questo dà lo stesso output come il codice MQL4. Eventuali suggerimenti sarebbe sicuramente essere apprezzato chiesto 4 febbraio 14 alle 20:06 Come capire iBars1 e un Missing Out of Range Errore MQL4 lavora in uno spazio inversa TimeDOMAIN-indicizzazione. Così il iBar mostra la profondità di TimeSeriesDataSET storica, mentre il più recente (live) bar ha un indice pari a 0. Ciò significa che per un calcolo di qualsiasi indicatore tecnico, il codificatore deve provvedere al trattamento in questo modo. Questo significa anche, che per ogni nuovo bar, la rappresentazione interna del-storage-layer di dati deve spostare in qualche modo tutti i DataCELLs da uno a sinistra (indietro in una direzione TimeDOMAIN verso la storia) per creare uno spazio per un nuovo bar con ancora indice 0 (un momento Ora in una TimeDOMAIN). Mentre fisicamente in movimento tutta la profondità attuale del datastore sarebbe un Vaste assoluto delle risorse (sia nel tempo, CPU.), Il-storage-strato di dati funziona più intelligenti, regola l'indicizzazione-testa su ogni nuovo evento bar più utilizza una forma di elastico capacità datastore planningre-size on-demand, in modo da ridurre al minimo la mem-alloc (s) durante la crescita continua del datastore. Questo significa, che i test per un errore di intervallo non ha il supporto in user-codice namespace della lingua MQL4. Come capire bandsshift e lo spostamento. Chiamando iBands () deve dichiarare per i quali bar si chiede la funzione per calcolare un risultato. spostamento fornisce l'input per questo. L'indice obbedisce alle regole di cui sopra. Una volta che i calcoli bande di Bollinger sono fatti, si può desiderare di compensare le curve da una certa quantità di bar - che recepisce il grafico in TimeDOMAIN destra - in modo che la grafica visualizzati incontra quelle aspettative o piacere. bandsshift fornisce l'input per questo grafico spostamento ad hoc. Si noti inoltre, che le differenze osservate tra Google, YFinance, MATLAB e grafici MQL4 devono semplicemente apparire e conto di ulteriori (non nota) Dettagli difficilmente si può decodificare dalle linee appena mostrate sullo schermo. appliedprice: fornisce un ingresso per la selezione appropriata tipo di prezzo di entrare nel calcolo Bollinger. Modalità: fornisce l'input per ricevere sia un valore PriceDOMAIN. Così un approccio pigro è quello di chiamare il tre volte iBands () per ottenere l'albero-line-Bollinger, o molte volte per un Bollinger Band calore mappe spettro di colore. Con la mia poca conoscenza di bande di Bollinger, sembra che si potrebbe avere un problema di implementazione. Hai provato l'output della funzione Bollinger in bande di Bollinger MATLAB può essere stato implementato in modo diverso per i casi limite in cui la dimensione della finestra è inferiore a 20. Potrebbe essere necessario contattare gli autori MQL4 per verificare le formule utilizzate. Ho notato una differenza quando ho implementato in Python e l'indicatore visto in Google Finance. Tuttavia, se è stato implementato correttamente, i valori in cui la dimensione della finestra è di 20, si vedranno gli stessi valori. A meno che non siete molto sicuri del codice FEX, è necessario utilizzare std e dire per l'attuazione. rispose 9 febbraio 14 alle 5:55 tua risposta 2017 Stack Exchange, Incmid, uppr, lowr Bollinger (dati, wsize, WTS, NSTD) calcola la media, superiore, e le fasce più basse che compongono le bande di Bollinger dai dati vettoriali. metà è il vettore che rappresenta la fascia di mezzo, una media mobile semplice con la dimensione di default della finestra di 20. uppr e lowr sono vettori che rappresentano le fasce superiori e inferiori. Queste bande sono 2 volte e -2 volte in movimento deviazioni standard dalla banda centrale. midfts, upprfts, lowrfts Bollinger (tsobj, wsize, WTS, NSTD) calcola la media, superiore, e le fasce più basse che compongono le bande di Bollinger da un momento finanziario serie oggetto tsobj. midfts è un oggetto serie finanziarie che rappresenta la banda centrale per tutte le serie in tsobj. Entrambi upprfts e lowrfts sono oggetti serie finanziarie che rappresentano le bande superiore e inferiore di tutte le serie, che sono 2 volte e -2 volte spostano deviazioni standard dalla banda centrale. Calcolare le bande di Bollinger per Disney quotazioni di chiusura e tracciare i risultati: Achelis, Steven Analisi Tecnica B. Dalla A alla Z. Secondo la stampa, McGraw-Hill, 1995, pp. 72 - 74.I appena pubblicato un articolo MATLAB come un sistema di esecuzione automatica. (E 'a disposizione dei lettori del mio libro e gli abbonati al mio sito Premium Content.) Viene fornito con ex ampi codici MATLAB l'esecuzione di una strategia di trading semplice Bollinger banda ad alta frequenza E-mini. Come ho detto prima, ora mi trovo MATLAB per essere una buona piattaforma non solo per test a ritroso, ma per l'esecuzione automatizzata pure. Naturalmente, non tutti i broker hanno le API che si connettono a MATLAB. I miei codici di esempio sono per la presentazione automaticamente gli ordini ad un account Interactive Brokers. In generale, trovo che la scrittura di programmi di esecuzione in MATLAB è un gioco da ragazzi rispetto a C, Java o anche C. Ci vuole circa 15 i tempi di sviluppo di un programma C. Eventuali limitazioni di prestazioni non saranno probabilmente a causa di MATLAB, ma per la latenza della vostra intermediazione nell'aggiornamento posizioni e lo stato degli ordini. 82 commenti: Ive stato un lurker per un po 'e godere il tuo blog. Domanda veloce: hai provato Mathematica (Ha un insieme potente ed abbastanza elegante delle funzioni sulla base di una metodologia lista che potrebbe mappare bene a strategie di trading Oppure, le cose casuali come ad apertura sintetica fotografia..) Grazie ancora per un altro articolo formidabile. Il tuo libro continua a dare via la password embedded per il tuo sito premio So che il vostro codice di Bollinger è stato progettato più per mostrarci come implementare MATLAB2IB che come un sistema di negoziazione, ma dal momento che sono, ovviamente, veramente bravo a Matlab, come è possibile aggiungere un trailing smettere di condizione di uscita. Capisco la logica - che cosa è il più alto profitto aperto, ciò che è in corso il profitto aperto, se diverso da X per cento poi uscire, ma sto avendo difficoltà con la sintassi Matlab. C'è qualche possibilità che si potrebbe fornire un semplice esempio di codice Matlab sia per l'esempio di Bollinger o come standalone Tu sei uno studioso e un signore, io sono alla ricerca di un esempio come questo per un po '. Molto apprezzato Hi-G Fav, ho programmato in Mathematica prima. Tuttavia, ritengo che la capacità MATLABs elaborazione di array è più adatto alla ricerca di arbitraggio statistico. Inoltre, io non sono sicuro che ci sia una API Mathematica per il collegamento al broker. Ernie Ciao Anonimo, mi guarderà nel fornire il codice di esempio per trailing stop ad un certo punto in futuro. Ma si può sempre tenere traccia del prezzo massima del magazzino in quanto la voce in una variabile Matlab. Così ogni volta che il Ultimo prezzo genera un ritorno (drawdown) che si trova sotto un certo minimo, inviare un ordine di mercato per uscire la vostra posizione. Ernie amato il libro Ernie, molte delle vostre funzioni di supporto si trovano sul mio cammino MATLAB. Se qualcuno viene lasciato fuori al freddo con IB, il Trading MB SDK integra bene anche con MATLAB. Ha controlli ActiveX prefabbricate che sono un gioco da ragazzi per implementare nella guida per la creazione di interfacce di trading personalizzate. Questo codice è oro - grazie per essere così generosi con la vostra conoscenza. Id come al commercio FX, ma con IB non si ottengono un ultimo prezzo nel feed di dati FX, si ottiene l'ultima stretta dalla sessione precedente, ma non l'ultimo prezzo di commercio nella sessione corrente. Che cosa è un buon modo per affrontare questo problema come un acquirente di prezzo in FX spesso si devono prendere la diffusione in modo da media (prendere il punto medio) del bidask è neanche una tale soluzione praticabile. Tutti i consigli si dovrebbe anche considerare il combo RPythonPerl. Il suo libero ma potente. Una domanda e un commento, qual è il vantaggio di utilizzare il software IB2MATLAB rispetto alla versione gratuita utilizzando ActiveX. Ecco un esempio di codice come collegare direttamente tramite COM. (Matlabtradercode. phpprojectInteractiveBrokersampfileIBexamples) Credo utilizzando un oggetto Timer MATLAB rendere il codice più amichevole. Grazie per il codice. Ho trovato molto usful. Da un ulteriore esame MatLab2IB API demo non include tutte le funzioni in modo che non può essere testato. Li ho contattato per vedere se una versione completa può essere trialed. Inoltre non ero in grado di ottenere il codice da MatLabtrader utilizzare controlli ActiveX per lavorare. Sono in esecuzione API 9.51. Qualcun altro ha più fortuna Matt, se IB non prevede ultimo prezzo per le valute, potrebbe essere necessario abbonarsi a Bloomberg e utilizzare Matlabs Datafeed cassetta degli attrezzi per ottenere i dati di Bloomberg. Si tratta naturalmente di una proposta molto più costoso, ma vale la pena se è possibile generare entrate dal tuo modello. Ernie Anonimo, Sì, ho anche menzionato in un post prima che ci sia un R API gratuito open-source che si connette a Interactive Brokers. Io ho mai provato io stesso, ma ha fatto tutto il lettore qui provare Ernie anonimo, Non ci può essere un vantaggio nell'utilizzo matlab2ibapi sopra utilizzando la versione gratuita da matlabtrader. Tuttavia, il costo di matlab2ibapi è così basso, e il servizio clienti in modo amichevole, che io non considerare libero un vantaggio intrinseco. Il più grande costo nel commercio è la perdita di cattiva esecuzione o modelli negativi. Ernie ExchangeAPI rifiutato la mia richiesta di una prova completamente funzionante. Non posso verificare questa API per l'affidabilità, la precisione e la latenza contro i miei attuali sistemi in modo dovrò trovare una soluzione che utilizza la versione MatLabTrader gratuito. Ho appena can39t affondo 300 in un altro software che suona bene a meno che non ci sia un netto vantaggio rispetto il mio attuale infrastruttura. Sono stato utilizzando la versione matlabtrader per lungo tempo e funziona perfettamente. Naturalmente si deve dare alcune modifiche qua e là, ma vi fornisce tutte le funzionalità. Ci sono alcuni esempi inclusi, in modo it39s davvero facile per iniziare. Io consiglio vivamente a tutti coloro che vogliono commerciare utilizzando l'API, ma doesnt vogliono spendere soldi) Dr. Chang, questo è un po estraneo a questo post, ma relative al tuo libro. Dal momento che si parla di Jim Simon. Ho pensato che apprezzerete questo: economistfinancedisplaystory. cfmstoryid13751628 così come questo particolare commento attaccato alla storia di cui sopra: quotHenry Leeds ha scritto: 29 maggio 2009 02:49 Jim Simons è un operatore piscina con la capacità di raccogliere grandi quantità di denaro da parte degli investitori . Gli manca le competenze e le conoscenze matematiche di sviluppare un sistema di negoziazione davvero superiore. La sua pretesa di fama poggia sui suoi anni assistono Shiing Shen Chern, un brillante matematico che generosamente permesso Simons di aggiungere il suo nome al 1974 carta Chern ha scritto. Il Fondo medaglione è stato creato da Elwyn Berlekamp, un brillante professore di Ingegneria Elettrica e matematica a Berkeley. Berlekamp utilizzato la sua conoscenza di Claude Shannon39s Teoria dell'Informazione rivoluzionario per creare questa meraviglia. Shannon era Berlekamp39s PhD al MIT Advisor. Berlekamp ha sviluppato il suo Fondo medaglione in una questione di mesi e la sua incredibile performance è descritto sul sito Berlekamp39s. Simons ha voluto Berlekamp di ri-localizzare a Long Island e di continuare a sviluppare gli algoritmi che compongono il suo capolavoro medaglione. Berlekamp non voleva lasciare Berkeley e di conseguenza ha fatto un errore enorme. Ha venduto i diritti per la sua invenzione di Simons per sei volte quello che gli era costata - una quantità relativamente piccola. Ora afferma sul suo sito web che il Fondo medaglione è un valore di molte migliaia di volte la quantità di dollari che ha ricevuto per la sua realizzazione. Il Hedgefund rinascimentale RIEF è un esempio di Simon39s capacità creative. La sua performance è pietoso e ha portato a ritiro degli investitori di 18 miliardi di dollari. gli investitori del Rinascimento si sono lamentati amaramente come il loro investimento è carenata così male mentre il Fondo medaglione, riservato esclusivamente ai dipendenti del Rinascimento, ha fatto così bene. Si può certamente comprendere la loro I39ve vexation. quot stato nel settore commerciale per un po 'e tutti e le sue cose madre di Jim Simon come essere un dio. Mr. Leeds sembra offrire un'altra lettura del Pr. successo Simon39s che è venuto come uno shock per me. I39m non così sicuro circa MatLab2IB39s servizio quotcustomer così friendlyquot dopo i commenti N N39s ho mandato loro chiedendo se possono confermare che il programma sarà sicuramente lavorare con IB39s FX, in particolare di routing con IDEALPRO - non ho mai avuto una risposta. Così ora sto giocando intorno con matlabtrader, ho intenzione di cercare di codificare il vostro esempio con matlabtrader, se ho capito bene forse lavorare come si potrebbe pubblicare il codice confronto. Amore quel sito - grazie Io sono uno dei delle API MATLAB2IB gli autori. Abbiamo davvero scusiamo. Non siamo sicuri di come abbiamo perso la tua email. Si può essere così gentile da noi e-mail di nuovo. Ci viene inondata di richieste di prova e di altri messaggi di posta elettronica e così potremmo avere perso. Potete scrivermi direttamente. SI, MATLAB2IB lavorerà con IB FX. Finché si dispone delle autorizzazioni con IB, MATLAb2IB non avrà problemi a mettere il vostro ordine tramite. Infatti, alcuni dei nostri proprietari di licenza lo uso speciifcally per FX. Per quanto riguarda NN: ci ha chiesto se lui siamo in grado di fornire una versione di prova con funzionalità di api completa. Come politica abbiamo deciso di non fornirlo. È così semplice. Ci sono molte ragioni per cui posso discutere separatamente. Matt, credo che se si desidera instradare gli ordini FX per IDEALPRO, basta specificare IDEALPRO lo scambio quando si utilizza la funzione PlaceOrder. Ernie avevo scritto in precedenza su un codice perdita trailing stop. Oltre a Mathworks vedo Aly Kassam ha aggiornato il suo eccellente 39Algorithmic Trading con MATLAB39 webinar e il codice associato in modo che ora include un codice di stop loss. Il codice webinar aggiornato e ': mathworks. aumatlabcentralfileexchange24320 I vostri lettori potrebbero essere interessati a guardare entrambi webinar Aly39s per vedere i benefici di MATLAB. Cerca MathWorks per 39Algorithmic Trading con MATLAB per Applications39 finanziaria e 39Algorithmic Trading con MATLAB - Aggiornamento per il 2009 (Regno Unito) 39 Quindi, se qualcuno ha voluto creare un programma di coppie di trading con questo campione, si creerebbe un quotlocalsymbol2quot, poi richiedere i dati di mercato per quel particolare la sicurezza e avere il programma execute acquistare o vendere gli ordini opposta alla sicurezza primaria con l'accessorio se loop e per il calcolo dei periodi di deviazione e lookback, si potrebbe essere in grado di regolare modificando il zscore39lookback3939entryz3939exitz39 per rappresentare dire regressione lineare invece di Bollinger bande quindi, se qualcuno ha voluto creare un programma di coppie di trading con questo campione, si creerebbe un quotlocalsymbol2quot, poi richiedere i dati di mercato per quel particolare la sicurezza e avere il programma esegue acquistare o vendere gli ordini opposta alla sicurezza primaria con l'accessorio se loop e per il calcolo dei periodi di deviazione e lookback, si potrebbe essere in grado di regolare modificando il zscore39lookback3939entryz3939exitz39 per rappresentare dire regressione lineare invece di bande di Bollinger Hi Anon, Sì, è possibile creare una symbol2 e localsymbol2 separato per l'altra gamba della coppia. Per quanto riguarda Zscore, lookback, ecc Una volta che avete determinato un rapporto di copertura, si è ridotta la serie storica a 1 dimensione (quotthe spreadquot), quindi Bollinger band funziona proprio come in un caso 1-strumento. Ernie Così, in ordine di acquisto per la sicurezza 39localsymbol39 parte di un ciclo, proprio sotto di esso, si potrebbe inserire un ordine di vendita per la sicurezza 39localsymbol239 e rendere il tutto parte di un unico ciclo di farne un commercio in tandem e regressione lineare o EMA o qualsiasi altro indicatore dovrebbe funzionare così a condizione che i parametri Zscore corretti sono riportati Che dire del volume metricsB indicatore B indicatore l'impostazione predefinita per B si basa sulla impostazione predefinita per le bande di Bollinger (20,2). Le bande sono impostate 2 deviazioni standard al di sopra e al di sotto della media mobile semplice a 20 giorni. che è anche la banda centrale. prezzo del titolo è la stretta o dell'ultima operazione. Segnali: OverboughtOversold B possono essere utilizzati per identificare le situazioni di ipercomprato e ipervenduto. Tuttavia, è importante sapere quando a cercare letture di ipercomprato e quando alla ricerca di letture di ipervenduto. Come la maggior parte degli oscillatori di momentum, è meglio cercare situazioni di ipervenduto di breve termine quando il trend di medio periodo è alto e le situazioni di ipercomprato di breve termine quando il trend di medio periodo è giù. In altre parole, cercare opportunità nella direzione del trend più grande, come ad esempio un pullback in un uptrend grande. Definire la tendenza più grande prima di cercare letture ipercomprato o ipervenduto. Grafico 1 mostra di Apple (AAPL) all'interno di un forte trend rialzista. Si noti come B spostato sopra 1 più volte, ma non ha neanche lontanamente a 0. Anche se B trasferisce sopra 1 numerose volte, queste letture ipercomprato non ha prodotto buoni segnali di vendita. Pullback erano poco profonde, come Apple ha invertito ben al di sopra della banda inferiore e riprende il suo trend rialzista. John Bollinger si riferisce a piedi la band durante le tendenze forti. In un forte trend rialzista, i prezzi possono salire la banda superiore e raramente toccare la banda inferiore. Al contrario, i prezzi possono camminare lungo la fascia inferiore e raramente toccare la banda superiore in una forte tendenza al ribasso. Dopo aver identificato una tendenza più grande fino, B può essere considerato ipervenduto quando si muove a zero o inferiore. Ricordate, B si sposta a zero quando il prezzo colpisce la fascia più bassa e sotto lo zero quando il prezzo si muove al di sotto della banda inferiore. Ciò rappresenta una mossa che è di 2 deviazioni standard al di sotto della media mobile a 20 giorni. Grafico 2 mostra il Nasdaq 100 ETF (QQQQ) all'interno di una tendenza rialzista che ha avuto inizio nel marzo 2009. B spostata sotto lo zero a tre volte nel corso di questo trend rialzista. Le letture di ipervenduto all'inizio di luglio e l'inizio di novembre forniti buoni punti di ingresso per partecipare alla più grande trend rialzista (frecce verdi). Segnali: Trend di identificazione John Bollinger hanno descritto un sistema di trend-following utilizzando B con il Money Flow Index (MFI). Un rialzo inizia quando B è superiore a .80 e MFI (10) è superiore a 80. MFI è vincolato tra zero e cento. Un movimento sopra 80 posti MFI (10) nella parte superiore 20 della gamma, che è una lettura forte. Downtrends vengono identificati quando B è al di sotto .20 e MFI (10) è inferiore a 20. Il grafico 3 mostra FedEx (FDX), con B e MFI (10). Un trend positivo iniziato alla fine di luglio, quando B era al di sopra .80 e MFI era al di sopra 80. Questo trend positivo è stato successivamente confermato con altri due segnali all'inizio di settembre e metà novembre. Anche se questi segnali sono stati buoni per l'identificazione di tendenza, i commercianti avrebbero probabilmente hanno avuto problemi con il rapporto rischio-ricompensa dopo tali grandi mosse. Ci vuole un aumento sostanziale dei prezzi per spingere B sopra .80 e MFI (10) sopra 80 allo stesso tempo. I commercianti potrebbero considerare l'utilizzo di questo metodo per identificare la tendenza e poi cercare adeguati livelli di ipercomprato o ipervenduto per migliori punti di ingresso. Conclusioni B quantifica il rapporto tra prezzo e le bande di Bollinger. Letture sopra .80 indicano che il prezzo è vicino alla banda superiore. Letture inferiori a .20 indicano che il prezzo è vicino alla banda inferiore. Picchi verso la forza banda spettacolo superiore, ma a volte può essere interpretato come ipercomprato. Precipita in basso a banda mostrare debolezza, ma a volte può essere interpretato come ipervenduto. Molto dipende la tendenza di fondo e altri indicatori. Mentre B può avere un certo valore di per sé, è meglio se usato in combinazione con altri indicatori o analisi dei prezzi. Clicca qui per un grafico dal vivo. B e SharpCharts B si trovano nella lista indicatore SharpCharts. I parametri di default (20,2) si basano sui parametri di default per le bande di Bollinger. Questi possono essere modificati di conseguenza. 20 rappresenta la media mobile semplice. 2 rappresenta il numero di deviazioni standard per la fascia superiore e inferiore. B può essere posizionata sopra, sotto o dietro la trama prezzo. Clicca qui per vedere un esempio vivo di B. consigliato scansioni B Uptrend Scan: Questa scansione filtra le scorte dove B è al di sopra .80 e MFI appena attraversato sopra 80. Secondo Bollinger, questi titoli potrebbero essere iniziando nuove fino altalene. Questa scansione è solo un punto di partenza. sono necessarie ulteriori raffinatezza e l'analisi. B Tendenza al ribasso Scan: Questa scansione filtra le scorte dove B è inferiore a .20 e MFI appena attraversato sotto 20. Secondo Bollinger, questi stock potrebbe essere l'avvio di nuove giù altalene. Questa scansione è solo un punto di partenza. sono necessarie ulteriori raffinatezza e l'analisi.
No comments:
Post a Comment