¿Por qué se llama termostato?. El sistema fue nombrado por su capacidad de adaptación a la conversión y al comercio en los dos modos de mercado, la oscilación y la tendencia. El sistema se deriva de nuestra observación del éxito de ciertos sistemas en ciertos mercados.
Primero, creamos una función para ayudar a determinar el patrón del mercado. De acuerdo con la salida de esta función, el termostato cambia de un patrón de seguimiento a un patrón de oscilación corta.
El patrón de seguimiento de tendencias utiliza un mecanismo de seguimiento de tendencias similar al de la cinta de Bryn. El sistema de oscilaciones a corto plazo es un avance abierto que incluye la identificación de patrones. Esta función compara la distancia de los movimientos del mercado con la distancia real de la marcha del mercado:
Abs (precio de cierre - precio de cierre [29]) / (precio más alto) (30) - precio más bajo (precio más bajo, 30 días) * 100
La función genera un valor entre 0 y 100. Cuanto mayor es el valor, menor es el nivel de congestión del mercado actual. Si el valor que devuelve es menor a 20, el sistema entra en modo oscilante corto.
Básicamente, la mayor parte del mercado está mostrando un movimiento oscilante en el que el sistema trata de aprovechar las fluctuaciones y obtener una pequeña ganancia; el termostato trata de lograr este logro mediante un impulso de compra/venta pequeño; si las fluctuaciones son lo suficientemente grandes, el sistema cambia de modelo.
A través de un análisis profundo de las fluctuaciones a corto plazo, descubrimos que a veces es mejor comprar que vender, y viceversa. Estos momentos se pueden determinar mediante un simple modelo visual. Si el precio de cierre de hoy es superior al de ayer, los altos, bajos y los precios de cierre (también llamados puntos clave del día), entonces pensamos que la acción del mercado de mañana puede ser bajista. Sin embargo, si el precio de cierre de hoy es inferior al promedio de los altos, bajos y los precios de compra de ayer, entonces el mercado de hoy puede ser bajista.
La estrategia del termostato es una estrategia muy popular en las plataformas de cuantificación de inventores, donde los usuarios agregan algunas lógicas de transacción adicionales según sus necesidades para hacer que la estrategia funcione mejor.
La imagen principal: Fórmula de la vía: TOP^^MAC+N_TMPTMP;// El canal de Brin está en línea Fórmula de la línea inferior: BOTTOM^^MAC-N_TMPTMP;// Bajo la línea del canal de Brin
El video fue publicado en Twitter. CMI fórmula: CMI:ABS ((C-REF ((C, N_CMI-1)) / ((HHV ((H, N_CMI) - LLV ((L, N_CMI)) * 100;//0-100 El valor más grande se toma, lo que indica que la tendencia es más fuerte, CMI <20 para el patrón de la conmoción, CMI> 20 para la tendencia
El código (en mi idioma):
MAC:=MA(CLOSE,N);
TMP:=STD(CLOSE,N);
TOP^^MAC+N_TMP*TMP; // 布林通道上轨
BOTTOM^^MAC-N_TMP*TMP; // 布林通道下轨
BBOLL:=C>MAC;
SBOLL:=C<MAC;
N_CMI:=30;
CMI:ABS(C-REF(C,N_CMI-1))/(HHV(H,N_CMI)-LLV(L,N_CMI))*100; //0-100 取值越大,说明趋势越强,CMI<20震荡模式,CMI>20为趋势
N_KD:=9;
M1:=3;
M2:=3;
RSV:=(CLOSE-LLV(LOW,N_KD))/(HHV(HIGH,N_KD)-LLV(LOW,N_KD))*100; //收盘价与N周期最低值做差,N周期最高值与N周期最低值做差,两差之间做比值。
K:=SMA(RSV,M1,1); //RSV的移动平均值
D:=SMA(K,M2,1); //K的移动平均值
MIND:=30;
BKD:=K>D AND D<MIND;
SKD:=K<D AND D>100-MIND;
// 震荡模式
BUYPK1:=CMI < 20 AND BKD; //震荡多单买平开
SELLPK1:=CMI < 20 AND SKD; //震荡空单卖平开
// 趋势模式下原有震荡持仓的处理
SELLY1:=REF(CMI,BARSBK) < 20 AND C>BKPRICE*(1+0.01*STOPLOSS*3) AND K<D; //震荡多单止盈
BUYY1:=REF(CMI,BARSSK) < 20 AND C<SKPRICE*(1-0.01*STOPLOSS*3) AND K>D; //震荡空单止盈
// 趋势模式
BUYPK2:=CMI >= 20 AND C > TOP; // 趋势多单买平开
SELLPK2:=CMI >= 20 AND C < BOTTOM; // 趋势空单卖平开
// 趋势模式下原有震荡持仓的处理
SELLY2:=REF(CMI,BARSBK) >= 20 AND C>BKPRICE*(1+0.01*STOPLOSS*3) AND SBOLL;//趋势多单止盈
BUYY2:=REF(CMI,BARSSK) >= 20 AND C<SKPRICE*(1-0.01*STOPLOSS*3) AND BBOLL;//趋势空单止盈
SELLS2:=REF(CMI,BARSBK) >= 20 AND C<BKPRICE*(1-0.01*STOPLOSS) AND SBOLL;//趋势多单止损
BUYS2:=REF(CMI,BARSSK) >= 20 AND C>SKPRICE*(1+0.01*STOPLOSS) AND BBOLL;//趋势空单止损
IF BARPOS>N THEN BEGIN
BUYPK1,BPK;
SELLPK1,SPK;
BUYPK2,BPK;
SELLPK2,SPK;
END
BUYY1,BP(SKVOL);
BUYY2,BP(SKVOL);
BUYS2,BP(SKVOL);
SELLY1,SP(BKVOL);
SELLY2,SP(BKVOL);
SELLS2,SP(BKVOL);
Los resultados de la estrategia son los siguientes:
Para más información, véase:https://www.fmz.com/strategy/129086