Tempo di lettura stimato: 14 min

PrescienTrader aggiunge le seguenti funzioni AFL ad AmiBroker. La maggior parte degli utenti dovrà solo utilizzare il PrescienTrader () , PTPlotFLDs () e PTBacktest () funzioni.

Se vuoi solo usare PrescienTrader come strumento autonomo per analizzare i grafici, puoi farlo fai semplicemente doppio clic sulla formula AFL di PrescienTrader, per creare un nuovo riquadro cartografico PrescienTrader. Non è necessario leggere il resto di questo articolo.

Il resto delle funzioni è per utenti avanzati che vogliono chiamare i nostri algoritmi da scriPT AFL personalizzati, per lo sviluppo del sistema di trading.


PrescienTrader

PrescienTrader ()
  • Questo è il funzione principale che visualizza un riquadro grafico PrescienTrader, visualizza tutti i grafici e genera report nella finestra Interpretazione.
  • Il la funzione non accetta parametri, poiché tutti i parametri sono impostati nella finestra Parametri AmiBroker.
  • Sebbene sia possibile tracciare PrescienTrader su un riquadro del grafico dei prezzi esistente, esso contiene numerosi indicatori e grafici che possono causare un ingombro eccessivo e possono entrare in conflitto con gli indicatori esistenti. Pertanto, si consiglia di creare un riquadro separato, esclusivamente per PrescienTrader.
  • È necessario impostare la chiave API nella finestra Parametri. Se non si imposta la chiave API, PrescienTrader visualizzerà un Chiave API non valida Messaggio.
  • Per informazioni su come utilizzare ciascuno di questi parametri, leggi l'articolo, Parametri di PrescienTrader.

PTPlotFLDs

PTPlotFLDs ()
  • Questa funzione traccia il Future Line of Demarcation (FLD) per ciascun picco di ciclo identificato da PrescienTrader.
  • La funzione non accetta parametri, poiché tutti i parametri sono impostati nella finestra Parametri AmiBroker.
  • Poiché il FLD è strettamente correlato al prezzo e utilizza la stessa scala del prezzo, si consiglia di tracciare i FLD nel riquadro del grafico dei prezzi, NON nel riquadro PrescienTrader.
  • Questa funzione utilizza PrescienTrader come fonte di dati per generare i grafici FLD. Perciò, RICHIEDE il PrescienTrader () funzione da eseguire in un riquadro grafico separato.
  • È possibile impostare i seguenti parametri nella finestra Parametri:
    • FLD (1-10) - Ciò consente di selezionare quali grafici FLD visualizzare sul grafico. Ogni frequenza di picco del ciclo ha un grafico FLD associato, ma questo parametro consente di evitare il disordine della carta, limitando il numero di grafici.
    • Sincronizzazione con PrescienTrader - Quando questa opzione è abilitata, la funzione verrà eseguita automaticamente una volta al secondo, per recuperare gli ultimi dati da PrescienTrader, garantendo che i grafici FLD rimangano sincronizzati con l'analisi dei cicli generata da PrescienTrader. Se disabiliti la sincronizzazione, potresti dover aggiornare manualmente il grafico ogni volta.
  • La funzione traccia i FLD passati, presenti e futuri. Tuttavia, per visualizzare il passato Grafici FLD, è necessario abilitare gli indicatori statici in PrescienTrader. Questo perché le frequenze del ciclo cambiano ad ogni nuova barra. Pertanto, per tracciare un FLD passato, la funzione deve accedere alle analisi del ciclo passato, che richiedono gli indicatori statici. Se gli indicatori statici sono disabilitati, vedrai solo grafici FLD per la barra corrente e le barre future. Tieni a mente, i grafici FLD futuri sono solo una stima e possono cambiare con l'aggiunta di nuove barre al grafico.

PTBarAnalysis

Analisi PTBar (serie di dati, polarità, base PL, intervallo di ricerca, frequenza minima, frequenza massima, filtro armonico, fitness minimo, migliori cicli X, barra di analisi, barra di avvio della trama, barra di fine della trama, indice della cache) 

PTBarAnalysis esegue un'analisi dei cicli temporali su una singola barra. Quindi genera vari grafici all'interno dell'intervallo di trama specificato, andando indietro e, facoltativamente, avanti nel tempo. Il grafico a ritroso può essere utilizzato per verificare visivamente l'accuratezza dell'analisi dei cicli, confermando che la sua forma segue le barre dei prezzi corrispondenti. La trama diretta viene utilizzata per prevedere i prezzi futuri o per visualizzare l'accuratezza delle sue previsioni sulle barre passate. Questa è la funzione per cui useresti trading dal vivo.

Questa funzione non restituisce alcun valore direttamente. Invece, popola un insieme di variabili AFL, tra cui scalari, array e matrici. Questi array possono essere tracciati come qualsiasi array AFL.

parametri

  • Serie di dati (Vettore)
    • Questo parametro prevede un Matrice AmiBroker, contenente le serie di dati effettive che si desidera analizzare. Ad esempio, se si desidera analizzare i prezzi di chiusura, si supererebbe l'AmiBroker integrato Chiudi (C) variabile, che è un array contenente i prezzi di chiusura delle serie di dati.
  • Polarità (numero intero)
    • 0 = positivo
    • 1 = negativo
  • Base PL (numero intero)
    • 0 = ampiezza
    • 1 = Forza
  • Gamma di ricerca (numero intero)
    • 1 - 15
  • Frequenza minima (numero intero)
    • In genere 10 - 100
  • Frequenza massima (numero intero)
    • Tipicamente 150 - 300
  • Filtro armonico (numero intero)
    • 0 - 100
  • Min Fitness (numero intero)
    • 0 - 100
  • I migliori cicli X. (numero intero)
    • 1 - 10
  • Barra di analisi (numero intero)
    • Questo è l'indice a barre per il quale verrà eseguita l'analisi.
    • Quando esegui un'analisi per il trading dal vivo, imposti la barra di analisi uguale all'indice a barre dell'ultima barra sul grafico.
    • AmiBroker visualizza la prima barra sul grafico come numero di barra 1. Tuttavia, l'indice interno utilizzato da AFL inizia dalla barra 0. Pertanto, se si desidera analizzare una barra specifica, è necessario sottrarre 1 dal numero di barra visualizzato in AmiBroker a ottenere il numero di barra corretto. Se ci sono 5.000 barre su un grafico, l'ultimo numero di barre sarebbe 4.999, non 5.000.
    • È possibile specificare un indice della barra passata per eseguire un'analisi point-in-time per quella barra. Ad esempio, se è stato specificato un indice a barre di 1.000, è possibile quindi confrontare la Linea prescientifica dalle barre 1,001 all'ultima barra del grafico, con le barre dei prezzi effettive per quell'intervallo di barre per vedere quanto era precisa la previsione in quel momento. Quando si generano i grafici del ciclo, la funzione ignora tutti i dati sui prezzi a destra del numero di barra specificato.
  • Traccia barra di avvio (numero intero)
    • Specifica l'indice della barra da cui dovrebbe iniziare la trama.
    • Di solito non è necessario calcolare i grafici per l'intera serie. Ad esempio, se la visualizzazione del grafico mostra 100 barre, sono necessari solo grafici per quelle 100 barre, non per l'intera serie.
  • Traccia barra finale (numero intero)
    • Specifica l'indice della barra in cui deve finire il grafico.
    • È possibile proiettare i grafici in futuro specificando una barra di fine del diagramma maggiore del numero di barre sul grafico.
  • Indice della cache (numero intero)
    • La funzione contiene un meccanismo di memorizzazione nella cache interno destinato a impedire l'invio di più richieste API consecutive per gli stessi dati. La cache memorizza le serie di dati, i parametri e i risultati per ciascuna richiesta API. Se riceve esattamente le stesse serie di dati e parametri due volte di seguito, salta la richiesta API e restituisce immediatamente il risultato memorizzato nella cache.
    • Se stai solo analizzando una singola serie di dati su un grafico, dovresti impostare l'indice della cache su 0.
    • Se si analizzano più serie di dati su un grafico, è necessario specificare un indice cache univoco per ciascuna serie di dati. Ad esempio, se si sta analizzando il periodo di base, oltre a due periodi di tempo più elevati, è necessario specificare Cache Index 0 per il periodo di base, Cache Index 1 per HTP 1 e Cache Index 2 per HTP 2. Ciò creerebbe una cache separata per ogni periodo di tempo.

Risposta

Array AFL:

Ogni elemento in questi array rappresenta una barra, iniziando con la barra zero.

Se hai impostato Traccia barra finale a un numero maggiore di LastValue (BarIndex ()), lo farà automaticamente sposta le matrici all'indietro dalla differenza. È quindi possibile proiettare i grafici nel futuro usando il Tracciare della funzione XShift parametro.

Ad esempio, supponiamo che il grafico contenga 5.000 barre, il che significa che l'ultimo indice a barre è 4.999. Se hai impostato Traccia barra finale a 5.009, l'array verrebbe spostato a sinistra di 10 bar. Quindi imposta XShift su 10, per tracciare 10 barre nel futuro. Poiché l'array è stato spostato a sinistra di 10 barre, il grafico XShifted sarà correttamente allineato al grafico.

  • PTPL - il Linea Prescient tracciare
  • PTPLSlope - il pendenza della Linea Prescient. Un valore positivo indica che è inclinato verso l'alto e un valore negativo indica che è inclinato verso il basso.
  • PTTrendBar - il numero di barra relativo all'interno dell'attuale tendenza della Linea Prescient. Il primo numero di barra in ogni tendenza è la barra 0 e tutti i numeri di barra successivi sono relativi alla prima barra della tendenza.
  • PTTrendBars - il numero totale di barre nell'attuale tendenza della linea Prescient.
  • PTTrendPct - il percentuale completata dell'attuale tendenza della linea Prescient. La percentuale non raggiungerà mai 100, perché ciò significherebbe che una nuova tendenza è iniziata con un completamento pari allo zero per cento. Quindi, 100% della vecchia tendenza è equivalente a 0% della nuova tendenza.

Matrici AFL:

  • PTCycles - contiene una riga per ogni singola frequenza del ciclo, nell'intervallo specificato da minFrequency e maxFrequency parametri. Ogni riga contiene otto colonne, con i numeri di colonna identificati dalle variabili AFL. Quando si leggono i valori dalla matrice, dovresti sempre fare riferimento ai numeri di colonna usando le variabili AFL associate, piuttosto che codificare i numeri di colonna. In questo modo, se i numeri di colonna cambieranno in futuro, il codice continuerà a funzionare,
    • Frequenza (PTColFrequency) - la frequenza del ciclo.
    • Ampiezza (PTColAmplitude) - l'ampiezza del ciclo.
    • Forza (PTColStrength) - la forza del ciclo, che è l'ampiezza divisa per la frequenza.
    • Barra di avvio (PTColStartBar) - l'indice della barra in cui inizia il diagramma del ciclo. Questo è usato per impostare la fase corretta per il diagramma del ciclo, ma generalmente non è necessario, poiché la funzione fornisce i grafici nella matrice PTPlot discussi di seguito.
    • Fitness (PTColFitness) - una misura statistica di quanto sia stato affidabile il ciclo, da 0% a 100%.
    • Picco (PTColPeak) - indica se il ciclo è un picco e, in tal caso, se è stato o meno filtrato da uno dei filtri specificati nelle impostazioni dei parametri:
      • 0 = Non un picco
      • 1 = picco valido
      • -1 = Picco filtrato per Min Fitness filtro
      • -2 = Picco filtrato per Filtro armonico
      • -3 = Picco filtrato per I migliori cicli X. filtro
    • pendenza (PTColSlope) - indica se il ciclo è inclinato verso l'alto o verso il basso. La pendenza verrà calcolata solo su cicli che sono picchi validi (picco = 1):
      • 1 = in pendenza su
      • -1 = In pendenza giù
    • Prezzo FLD (PTColFLDPrice) - indica il prezzo del FLD del ciclo. Questo sarà calcolato solo su cicli che sono picchi validi (picco = 1).
  • PTPeaks - il PTPeaks matrice contiene le stesse informazioni nello stesso formato di PTCycles matrice, tranne che include solo cicli che sono picchi validi (picco = 1). I cicli saranno ordinati per frequenza.
  • PTPlots - il PTPlots la matrice contiene i grafici per ciascun ciclo che è un picco valido (picco = 1), ordinati per frequenza del ciclo. Ogni riga rappresenta a frequenza di picco del ciclo e ogni colonna rappresenta a bar. Come per le matrici, se si specifica a Traccia barra finale oltre l'ultima barra del grafico, le righe della matrice verranno spostate a sinistra della differenza. È possibile utilizzare il MxGetBlock funzione per convertire le righe della matrice in array AFL.
  • PTFLDPrices - La matrice PTFLDPrices contiene i prezzi FLD per ciascun ciclo che è un picco valido (picco = 1), ordinati per frequenza del ciclo. Ogni riga rappresenta una frequenza del ciclo di picco e ogni colonna rappresenta una barra. Questa matrice conterrà solo i prezzi FLD per la barra corrente e le barre future. Usa il PTRangeAnalysis funzione per ottenere dati FLD precedenti. Come per le matrici, se si specifica una barra di fine del grafico oltre l'ultima barra del grafico, le righe della matrice verranno spostate a sinistra della differenza. È possibile utilizzare la funzione MxGetBlock per convertire le righe della matrice in array AFL.

Scalari AFL

  • PTFLDScore - Il Punteggio FLD è un potente indicatore che può aiutare a confermare o rifiutare gli scambi proposti dalla Linea Prescient e dagli altri indicatori del ciclo.
    • Il punteggio FLD viene calcolato moltiplicando la forza o l'ampiezza (a seconda del Base PL impostazione) di ogni frequenza del ciclo di picco di 1 o -1, a seconda che il prezzo della serie sia superiore o inferiore al prezzo FLD e sommandoli tutti insieme.
    • Se il punteggio FLD è positivo, indica che il mercato è ciclico uptrend.
    • Se il punteggio FLD è negativo, indica che il mercato è ciclico tendenza al ribasso.

PTRangeAnalysis

Analisi PTRange (serie di dati, polarità, base PL, intervallo di ricerca, frequenza minima, frequenza massima, filtro armonico, fitness minimo, migliori cicli X, barra di avvio, barra di fine, array di processo)

PTRangeAnalysis analizza un intera gamma di barre, restituendo il point-in-time valori per ogni barra nell'intervallo analizzato. chiamata PTRangeAnalysis per un intervallo di 1.000 barre equivale a chiamare PTBarAnalysis 1.000 volte, una volta per ogni barra dell'intervallo. Questa è la funzione da usare per backtesting e ottimizzazione, NON per il trading dal vivo.

Questa funzione non restituisce alcun valore direttamente. Invece, popola una serie di matrici e matrici AFL. Questi array possono essere tracciati come qualsiasi array AFL.

parametri

  • Serie di dati (Vettore)
    • Questo parametro prevede un Matrice AmiBroker, contenente le serie di dati effettive che si desidera analizzare. Ad esempio, se si desidera analizzare i prezzi di chiusura, si supererebbe l'AmiBroker integrato Chiudi (C) variabile, che è un array contenente i prezzi di chiusura delle serie di dati.
  • Polarità (intero o array
    • 0 = positivo
    • 1 = negativo
  • Base PL (intero o array)
    • 0 = ampiezza
    • 1 = Forza
  • Gamma di ricerca (intero o array)
    • 1 - 15
  • Frequenza minima (intero o array)
    • In genere 10 - 100
  • Frequenza massima (intero o array)
    • Tipicamente 150 - 300
  • Filtro armonico (intero o array)
    • 10 - 100
  • Min Fitness (intero o array)
    • 0 - 95
  • I migliori cicli X. (intero o array)
    • 1 - 10
  • Barra di inizio / fine (numero intero)
    • Il Barra di avvio e End Bar i parametri specificano l'intervallo di barre da analizzare. diversamente da PTBarAnalysis, End Bar può NON supera l'indice a barre dell'ultimo valore sul grafico. Questa funzione è utilizzata per backtesting, non trading dal vivo, quindi non avrebbe senso proiettare le trame nel futuro.
  • Array di processo (numero intero)
    • Questo parametro determina se la funzione elabora i parametri come numeri interi o array. Ciò si applica solo ai parametri che possono essere numeri interi o array, tra cui Polarità, Base PL, Intervallo di ricerca, Frequenza minima, Frequenza massima, Filtro armonico, Idoneità minima e Cicli X migliori.
    • Normalmente, questi parametri sono numeri interi, il che significa che la stessa impostazione di parametro verrebbe applicata all'intero intervallo di barre analizzate. Questa è l'impostazione predefinita e la maggior parte degli utenti dovrebbe lasciarla sola. Tuttavia, se sei un utente avanzato, questo ti dà la capacità incredibilmente potente di variare le impostazioni dei parametri su una base per barra passando i valori come array.
    • Se si utilizzano array, è necessario impostare il parametro Process Arrays su 1, in modo che PrescienTrader sappia elaborarli come array. L'abilitazione di questa funzione aumenta notevolmente le dimensioni del file di ogni richiesta API, che consuma larghezza di banda e rallenta i tempi di elaborazione, quindi abilitalo solo se sai cosa stai facendo e hai una buona ragione per farlo.
      • 0 = Off
      • 1 = attivo

Risposta

Array AFL

Ogni elemento in questi array rappresenta una barra, iniziando con la barra zero.

  • PTStaticPL - statico Linea Prescient. Questo contiene i valori del grafico Linea Prescient calcolati in point-in-time di ciascuna barra nell'intervallo specificato. Questo è molto diverso dall'analisi standard della linea Prescient restituita da PTBarAnalysis, che calcola la linea prescientifica a singolo point-in-time, quindi proietta la trama indietro e avanti nel tempo.
  • PTStaticPLSlope - la pendenza del statico Linea Prescient. Un valore positivo indica che è inclinato verso l'alto e un valore negativo indica che è inclinato verso il basso.
  • PTStaticPLSlopeCum - il cumulativo pendenza della Linea Prescient statica. Questo è quello che avresti usato tracciare la Linea Prescient statica.
  • PTStaticTrendBar - il numero di barra relativo all'interno dell'attuale tendenza statica Prescient Line. Il primo numero di barra in ogni tendenza è la barra 0 e tutti i numeri di barra successivi sono relativi alla prima barra della tendenza.
  • PTStaticTrendBars - il numero totale di barre nell'attuale tendenza statica Prescient Line.
  • PTStaticTrendPct - il percentuale completata dell'attuale tendenza statica Prescient Line. La percentuale non raggiungerà mai 100, perché ciò significherebbe che una nuova tendenza è iniziata con un completamento pari allo zero per cento. Quindi, 100% della vecchia tendenza è equivalente a 0% della nuova tendenza.
  • PTStaticFLDScore - vedi la descrizione in PTBarAnalysis sezione per una spiegazione del punteggio FLD.

Matrici AFL

Queste matrici restituiscono un elenco di valori relativi a frequenze del ciclo di picco di ogni barra. Ogni matrice rappresenta un indicatore diverso, ma sono tutti ordinati per frequenza. Quindi, ad esempio, la riga 3, colonna 999 corrisponde al stesso frequenza di picco del ciclo a bar 1.000, in tutte le matrici. Le matrici contengono il numero di righe necessarie per elencare tutte le frequenze del ciclo di picco per tutte le barre.

  • PTStaticFrequencies - ogni riga in questa matrice corrisponde a frequenza di picco del ciclo.
  • PTStaticSlopes - ogni riga in questa matrice corrisponde alla pendenza della frequenza trovata in PTStaticFrequencies matrice, alla stessa riga e colonna.
  • PTStaticFLDPrices - ogni riga in questa matrice corrisponde al prezzo FLD della frequenza trovata nella matrice PTStaticFrequencies, nella stessa riga e colonna.

PTBacktest

PTBacktest ()

Questa funzione è utilizzata per correre un' singolo filo analisi per un'esplorazione, backtest o ottimizzazione. Non accetta parametri perché configuri tutti i parametri in parametri finestra. Quando corre, chiama PTRangeAnalysis e genera le matrici e le matrici AFL descritte nella funzione PTRangeAnalysis.

A differenza della funzione PrescienTrader, che supporta due periodi di tempo più elevati, il PTBacktest supporta la funzione illimitato periodi di tempo più elevati.

Leggi il Esplorazione, backtest e OPTimization articolo, per una spiegazione dettagliata di come utilizzare questa funzione.


PTBacktestMultiPrepare

PTBacktestMultiPrepare ()

Questa funzione è utilizzata per preparare un' multi-threaded analisi per un'esplorazione, backtest o ottimizzazione. Utilizza i parametri definiti nella finestra Parametri per generare i dati nel formato corretto per una richiesta API.

Leggi il Esplorazione, backtest e OPTimization articolo, per una spiegazione dettagliata di come utilizzare questa funzione.


PTBacktestMultiExecute

PrescientAnalysisExecute ()

Questa funzione è utilizzata per eseguire un' multi-threaded analisi per un'esplorazione, backtest o ottimizzazione. Analizza i dati, invia i risultati alle colonne di esplorazione e genera array AFL contenenti i risultati.

Leggi il Esplorazione, backtest e OPTimization articolo, per una spiegazione dettagliata di come utilizzare questa funzione.


PTLogToFile

PTLogToFile (Messaggio)

Puoi usare PTLogToFile per scrivere messaggi nel file di registro definito nella finestra Parametri backtest.


PTWait

PTWait (secondi)

Puoi usare PTWait per sospendere l'esecuzione per il numero di secondi specificato. Normalmente, questo viene utilizzato quando si effettuano richieste API. Se una richiesta API non riesce a causa di una connessione Internet inattiva, è possibile utilizzare PTWait per attendere un determinato numero di secondi prima di riprovare.

PTPositionSize

PTPositionSize (Punti a rischio, Percentuale di capitale a rischio, Valuta di base del conto)

Questa funzione automatizza il dimensionamento della posizione basato sulla volatilità in stile Van Tharp in AmiBroker. Riteniamo che questo sia l'approccio migliore al dimensionamento delle posizioni, poiché gestisce automaticamente il rischio in base alla volatilità e al patrimonio netto del portafoglio.

AmiBroker integrato SetPositionSize La funzione include un'opzione per specificare la dimensione della posizione in percentuale del capitale proprio, ma considera la dimensione della posizione come margine importo richiesto per aprire la posizione. Il problema è, il margine è solo vagamente associato al rischio. Mentre è vero che strumenti più rischiosi generalmente con requisiti di margine più elevati, riteniamo sia meglio calcolare la dimensione della posizione in base al rischio esatto di ogni operazione, non facendo affidamento sul proprio broker per gestire il rischio per te. Pertanto, dobbiamo usare il denaro contante valore della posizione, non il valore del margine. Ad esempio, se acquisti un contratto a termine e il suo prezzo scende di 2%, hai perso 2% del valore in contanti di quel contratto, non 2% del tuo deposito di margine!

Questa funzione imposta la dimensione della posizione utilizzata da AmiBroker per eseguire operazioni; NON restituisce un valore. È destinato a sostituire la funzione SetPositionSize integrata.

  • Il Punti a rischio L'argomento dovrebbe essere un array, specificando il numero di punti che sei disposto a rischiare su ogni trade. In genere, si tratterebbe dello stesso numero di punti utilizzati per la sosta. Se non stai utilizzando gli stop, stima il numero massimo di punti che il tuo sistema di trading perde in genere prima che esca da una posizione. Si consiglia di utilizzare una formula che considera la fascia di prezzo tipica dello strumento corrente. Per esempio, ATR (20) * 2 specifica un rischio massimo pari al doppio dell'intervallo True True. È particolarmente importante utilizzare una formula, non un valore statico, quando si esegue il backtesting di più strumenti (backtesting di portafoglio), quindi Points Risked si adatta automaticamente alla fascia di prezzo e alla volatilità di ogni strumento.
  • Percentuale di capitale a rischio è la percentuale del tuo capitale attuale che sei disposto a rischiare su ogni operazione. Normalmente utilizziamo 2%, ma è possibile utilizzare un valore più alto o più basso, a seconda della tolleranza del rischio.
  • Valuta di base del conto è una stringa contenente la valuta di base del tuo conto di trading. Ad esempio, "USD".

La funzione utilizza i seguenti campi dalla finestra Informazioni di AmiBroker:

  • Deposito di margine
  • Valore punto
  • Moneta

Inoltre, la funzione supporta dimensionamento della posizione in più valute, che è necessario quando la valuta di base di uno strumento differisce dalla valuta di base del tuo account. Più comunemente, questo accade con coppie Forex denominate in valute diverse dai dollari statunitensi. Per eseguire il dimensionamento della posizione in più valute, la funzione cerca il prezzo della coppia Forex che è una combinazione della valuta di base del tuo account e della valuta di base della coppia di Forex che viene testata nuovamente. Ad esempio, se si esegue il backtesting di CHFJPY, la valuta di base sarebbe JPY. Se la valuta di base del tuo account è USD, la funzione cercherà il prezzo di USDJPY, per calcolare il prezzo di JPY in dollari statunitensi, che gli consente quindi di calcolare la dimensione della posizione di CHFJPY in dollari statunitensi. Pertanto, per il funzionamento del dimensionamento della posizione in più valute sono necessari i seguenti dati:

  1. Devi inserire il corretto Valore punto per ogni strumento che stai testando. Consultare la documentazione di AmiBroker per una spiegazione del valore in punti.
  2. Devi inserire il Deposito di margine per ogni strumento che stai testando. È possibile inserire un deposito a margine fisso come numero positivo o come percentuale del valore in contanti del contratto, inserendo la percentuale come numero negativo. Ad esempio, se il tuo broker offre una leva 20: 1, il deposito del margine sarebbe 5%. Quindi inseriresti -5 come deposito di margine.
  3. Per qualsiasi strumento NON denominato nella valuta di base del tuo account, devi inserire la valuta di base in Moneta campo. Usando l'esempio di CHFJPY, inseriresti JPY nel campo Valuta per quello strumento.
  4. Devi avere virgolette nel tuo database AmiBroker per il simbolo ticker XXXOOO o OOOXXX, dove XXX rappresenta il tuo account valuta di base e OOO rappresenta il strumento valuta di base. Se la valuta di base del tuo account appare per prima nel simbolo (XXXOOO), la funzione inverte automaticamente il prezzo della coppia di valute. Ancora una volta, usando l'esempio di CHFJPY, se la valuta di base del tuo account è USD, nel tuo database dovresti avere delle quotazioni per USDJPY. Il simbolo deve essere formattato esattamente come XXXOOO o OOOXXXX, NON XXX-OOO o altre varianti. Se il fornitore di dati utilizza un formato di simbolo ticker non standard, è possibile mappare il formato standard nel formato non standard nel database creando una variabile che prende il nome dal formato standard e assegnando il formato non standard come valore. Ancora una volta, usando l'esempio sopra, se il tuo database conteneva il simbolo USD-JPY, puoi mappare USDJPY a USD-JPY usando il seguente codice:
USDJPY = "USD-JPY";

In alternativa, è possibile impostare un valore di conversione fisso impostando la variabile uguale a un valore numerico. Per esempio:

USDJPY = 108,68;
  • L'impostazione di un valore di conversione fisso ha la precedenza su qualsiasi valore nel database. Ciò è utile soprattutto quando nel database non sono presenti virgolette per la valuta di conversione.
  • È necessario creare variabili per tutte le mappe dei simboli prima chiamando la funzione PrescientPositionSize.
  • La funzione PrescientPositionSize ignora le impostazioni di conversione valuta integrate di AmiBroker. Pertanto, quando si utilizza questa funzione, è possibile ignorare le impostazioni in Preferenze-> Valute schermo. In realtà ti consigliamo disabilitare le funzioni di conversione dinamica della valuta di AmiBroker rimuovendo i simboli da Simbolo della velocità dinamica colonna in questa schermata. Questo perché la conversione di valuta dinamica integrata di AmiBroker crea un problema quando la valuta di conversione ha una cronologia delle quotazioni più breve rispetto allo strumento analizzato. In questo caso, la dimensione della posizione verrà impostata su zero per tutte le date al di fuori dell'intervallo della cronologia delle quotazioni della valuta di conversione. La rimozione dei simboli dalla colonna Simbolo tasso dinamico disabilita la conversione di valuta dinamica, che risolve questo problema. Se la cronologia delle quotazioni della valuta di conversione è inferiore alla cronologia delle quotazioni dello strumento analizzato, la funzione PresicentPositionSize utilizzerà il prezzo dal ultima barra della valuta di conversione, per qualsiasi barra al di fuori dell'intervallo della cronologia delle quotazioni della valuta di conversione.
questo articolo è stato utile?
antipatia 0
Visualizzazioni: 721
SEMPRE GRATUITO
Segnali di trading giornalieri
da PrescientSignals
SOTTOSCRIVI
Iscriviti per ricevere segnali di trading GRATUITI consegnati quotidianamente alla tua casella di posta elettronica
I segnali gratuiti vengono ritardati di una settimana. Ciò consente di valutare il nostro servizio PrescientSignals senza rischi, confrontando le previsioni della settimana precedente con i risultati effettivi.
SEMPRE GRATUITO
Segnali di trading giornalieri di PrescientSignals
SOTTOSCRIVI
Iscriviti per ricevere segnali di trading GRATUITI consegnati quotidianamente alla tua casella di posta elettronica
I segnali gratuiti vengono ritardati di una settimana. Ciò consente di valutare il nostro servizio PrescientSignals senza rischi, confrontando le previsioni della settimana precedente con i risultati effettivi.