CASH
CASH è un'unità di quantità di ProBacktest e ProOrder che dimensiona un ordine per importo in denaro, come in BUY 1000 CASH, invece che per un numero fisso di azioni o contratti.
Sintassi
BUY x CASHParametri
| Nome | Tipo | Predefinito | Descrizione |
|---|---|---|---|
x | numerico | nessuno | Ammontare di capitale da allocare all'ordine, nella valuta del conto. La piattaforma lo converte in una quantità al prezzo corrente. |
Come funziona
CASH sostituisce un conteggio di unità in un'istruzione di ordine. Dove BUY 5 CONTRACTS AT MARKET fissa la quantità, BUY 1000 CASH AT MARKET fissa il capitale e lascia che la piattaforma ricavi la quantità dividendo l'importo in contanti per il prezzo dello strumento. L'esposizione risultante resta vicina all'importo richiesto indipendentemente dal fatto che lo strumento quoti a 8 o a 800.
Poiché un importo in denaro raramente si divide in un numero intero di unità, la quantità calcolata viene arrotondata. La direzione dell'arrotondamento può essere forzata con ROUNDEDDOWN o ROUNDEDUP immediatamente dopo il CASH parola chiave, per esempio BUY 1000 CASH ROUNDEDDOWN AT MARKET non spende mai più dell'importo indicato.
L'importo può essere un letterale o qualsiasi espressione numerica, il che rende CASH l'unità naturale per un dimensionamento proporzionale all'equity: ricalcola l'allocazione dal capitale iniziale più STRATEGYPROFIT e ogni operazione si adatta automaticamente al conto. CASH è interscambiabile con le altre unità di quantità, CONTRACT, SHARES e LOT, con la stessa sintassi di ordine.
Esempi
Esempio 1, Allocazione di capitale fissa per trade (ProBacktest)
long = close crosses over Average[50](close)
IF NOT LongOnMarket AND long THEN
// Allocate 1000 of account currency, whatever the share price is
BUY 1000 CASH AT MARKET
ENDIF
SET STOP %LOSS 3Ogni ingresso impiega le stesse 1000 unità di capitale. Su un'azione che quota 50 sono circa 20 azioni, su una che quota 250 circa 4 azioni, mantenendo costante l'esposizione tra gli strumenti.
Esempio 2, Dimensionamento proporzionale all'equity con controllo dell'arrotondamento (ProOrder)
DEFPARAM CumulateOrders = false
// Reinvest gains: allocation grows and shrinks with realized performance
startCapital = 10000
allocation = (startCapital + STRATEGYPROFIT) * 0.2
IF NOT OnMarket AND RSI[14](close) < 30 THEN
// Round down so the order never exceeds the allocation
BUY allocation CASH ROUNDEDDOWN AT MARKET
ENDIF
SET STOP %LOSS 2La dimensione dell'ordine è il 20 percento dell'equity corrente. ROUNDEDDOWN garantisce che la quantità calcolata resti entro il budget.
Esempio 3, Ingresso short dimensionato in valuta (ProOrder)
bearish = close crosses under Average[100](close)
IF NOT ShortOnMarket AND bearish THEN
// Commit 500 of capital to the short side
SELLSHORT 500 CASH AT MARKET
ENDIF
SET STOP %TRAILING 2CASH funziona anche con gli ingressi short; la piattaforma vende allo scoperto tante unità quante ne coprono 500 unità di valuta al prezzo corrente.
Errori e insidie comuni
- Sorprese nell'arrotondamento della quantità. L'importo in contanti viene convertito in un numero intero di unità, quindi l'esposizione effettiva differisce leggermente da
x. Sugli strumenti a prezzo elevato lo scarto può essere ampio;BUY 1000 CASHsu un'azione da 800 compra una sola azione. UsaROUNDEDDOWNoROUNDEDUPper controllare la direzione. - Importo inferiore a un'unità. Se
xè inferiore al prezzo di una unità e l'arrotondamento è per difetto, la quantità calcolata può essere zero e nessun ordine viene inviato. Proteggi l'allocazione con un minimo prima della riga dell'ordine. - Non è un'istruzione di stop loss.
CASHdimensiona gli ingressi; non limita le perdite. Limitare il denaro perso su un'operazione è compito diSET STOP $LOSS. - Le uscite di solito non richiedono una quantità.
SELL AT MARKETchiude l'intera posizione. Ripetere un importo in contanti all'uscita chiude solo la quantità calcolata, cosa che può lasciare una posizione residua quando il prezzo si è mosso dall'ingresso.
Istruzioni correlate
CONTRACT, quantità dell'ordine come numero di contratti.LOT, quantità dell'ordine in lotti.SHARES, quantità dell'ordine come numero di azioni.BUY, apre o incrementa una posizione long.SELLSHORT, apre o incrementa una posizione short.ROUNDEDDOWN, arrotonda per difetto una quantità derivata dall'importo in valuta.ROUNDEDUP, arrotonda per eccesso una quantità derivata dall'importo in valuta.MARKET, esecuzione immediata al prezzo corrente.STRATEGYPROFIT, profitto realizzato della strategia, utile per il dimensionamento basato sull'equity.