SHARES
SHARES en ProBacktest y ProOrder dimensiona una orden como un número de acciones para estrategias de acciones y CFD. Cubre la sintaxis, la elección de unidad y ejemplos resueltos.
Sintaxis
[BUY|SELLSHORT] quantity SHARES [AT MARKET|AT price LIMIT|AT price STOP]Cómo funciona
SHARES nombra la unidad en que se cuenta la cantidad de la orden. BUY 100 SHARES AT MARKET compra 100 acciones al siguiente precio disponible. La palabra clave va después del número y antes del tipo de orden, ya sea AT MARKET, un AT price LIMIT, o un AT price STOP.
La unidad de dimensionamiento debe coincidir con el instrumento. SHARES encaja con acciones y CFDs sobre acciones, CONTRACT encaja con futuros y CFDs, y LOT encaja con el forex. Elegir la unidad equivocada dimensiona la posición de forma incorrecta para ese mercado. Si las órdenes repetidas se acumulan en una posición mayor lo determina CumulateOrders, exactamente igual que con cualquier otra unidad de tamaño.
Ejemplos
Ejemplo 1, Entrada short dimensionada en acciones (ProBacktest)
// Sell short one share when MACD crosses below zero and no short is open
myMACD = MACD[12,26,9](close)
shortCondition = myMACD CROSSES UNDER 0
IF NOT ShortOnMarket AND shortCondition THEN
SELLSHORT 1 SHARES AT MARKET
ENDIFEste es el patrón de la referencia oficial. La orden vende una acción a mercado cuando el histograma del MACD cruza por debajo de cero y no hay ya una posición short abierta.
Ejemplo 2, Entrada long con un número fijo de acciones (ProOrder)
DEFPARAM CumulateOrders = false
// Buy 100 shares on a break above the 20-bar high
IF NOT LongOnMarket AND close CROSSES OVER Highest[20](high) THEN
BUY 100 SHARES AT MARKET
ENDIFLa posición es de 100 acciones fijas cada vez que se activa la entrada, y la protección de posición evita una segunda entrada mientras ya se está long.
Ejemplo 3, Orden stop pendiente dimensionada en acciones (ProOrder)
DEFPARAM CumulateOrders = false
// Rest a stop entry above the market for 50 shares
entryLevel = Highest[20](high)
IF NOT OnMarket THEN
BUY 50 SHARES AT entryLevel STOP
ENDIFLa orden stop pendiente se ejecuta solo si el precio sube atravesando el máximo de 20 bars, comprando 50 acciones en ese nivel.
Errores y trampas habituales
- Unidad incorrecta para el mercado.
SHARESen un par de divisas o un contrato de futuros no dimensiona la orden como se pretende. UsaCONTRACTpara futuros y CFDs yLOTpara forex. - Acciones fraccionarias. Las normas del bróker deciden si se acepta una cantidad fraccionaria de acciones. Un número entero es la opción segura para la mayoría de los instrumentos.
- Acumulación no intencionada.
CumulateOrdersestá activado por defecto, por lo que una entrada que se mantiene verdadera durante varios bars añade títulos en cada uno de ellos. PonDEFPARAM CumulateOrders = falseo protegerlo conNOT LongOnMarket. - Solo la unidad, no la orden completa.
SHARESes una parte de una línea de orden. Siempre va después de una cantidad y se sitúa dentro de unBUYoSELLSHORTinstrucción con un tipo de orden.
Instrucciones relacionadas
CONTRACT, unidad de cantidad para futuros y CFDs.LOT, unidad de cantidad para forex.BUY, abre una posición long dimensionada en la unidad elegida.SELLSHORT, abre una posición short dimensionada en la unidad elegida.SELL, cierra una posición long.EXITSHORT, cierra una posición short.MARKET,LIMIT,STOP, los tipos de orden que puede usar una orden dimensionada en acciones.