La estrategia permite realizar operaciones de corto plazo mediante el análisis de las diferencias de precios de cierre de dos días para determinar la dirección de los movimientos futuros de los precios. La estrategia es simple, intuitiva y fácil de implementar y es adecuada para los operadores de corto plazo.
La lógica central de la estrategia es comparar el cierre de hoy con el de ayer. En concreto:
La clave aquí es establecer un umbral razonable. Si el umbral se establece demasiado grande, se perderá una menor fluctuación de precios; si el umbral es demasiado pequeño, se provocará una mayor cantidad de transacciones irracionales debido a la fluctuación normal. La estrategia utiliza un diseño de umbral ajustable, con un valor predeterminado de 0.004, una longitud de paso de 0.001, que se puede probar para seleccionar el umbral adecuado en función de los datos históricos.
En general, la estrategia capta los cambios en los precios entre dos días de negociación consecutivos, filtra las fluctuaciones normales a través de la filtración de la devaluación, y determina la dirección de la posible tendencia de los precios en el futuro, para realizar operaciones de corta línea. La idea de la estrategia es simple, intuitiva y fácil de entender y implementar.
Para abordar estos riesgos, se puede considerar:
La estrategia puede ser optimizada en las siguientes direcciones:
Múltiples períodos de tiempo de retroalimentación- Utiliza diferentes períodos de tiempo (línea solar, 4 horas, 1 hora, etc.) para medir los parámetros de la estrategia y elegir el período y los parámetros de tiempo óptimos.
Indicadores de fluctuación combinados- La inclusión de indicadores que toman en cuenta la volatilidad de los precios, como el ATR, puede ayudar a establecer un umbral dinámico.
Añadir la lógica de stop loss- Establezca un punto de parada razonable para controlar las pérdidas individuales.
Optimización de la gestión de posiciones- Optimizar el tamaño de las posiciones y las reglas de acumulación de almacenes para aumentar las ganancias al mismo tiempo que garantiza la pérdida.
Tener en cuenta el costo de la transacción- Incluir en la retroevaluación los costos de las transacciones, como las comisiones, los puntos de deslizamiento, etc., para que la retroevaluación esté más cerca de la realidad.
Introducción al aprendizaje automático- Aplicación de algoritmos de aprendizaje automático para extraer más características y crear señales de transacción más potentes.
Esta estrategia se basa en la diferencia de precios de cierre para determinar la tendencia futura de los precios, y se utiliza para diseñar estrategias de negociación de líneas cortas con ideas simples e intuitivas. La estrategia es fácil de implementar y es adecuada para operaciones de línea corta, pero puede haber un cierto riesgo de pérdida.
/*backtest
start: 2023-08-28 00:00:00
end: 2023-09-27 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Daily Close Comparison Strategy (by ChartArt) repainting results", shorttitle="CA_-_Daily_Close_Strat", overlay=false)
// ChartArt's Daily Close Comparison Strategy
//
// Version 1.0
// Idea by ChartArt on February 28, 2016.
//
// This strategy is equal to the very
// popular "ANN Strategy" coded by sirolf2009,
// but without the Artificial Neural Network (ANN).
//
// Main difference besides stripping out the ANN
// is that I use close prices instead of OHLC4 prices.
// And the default threshold is set to 0 instead of 0.0014
// with a step of 0.001 instead of 0.0001.
//
// This strategy goes long if the close of the current day
// is larger than the close price of the last day.
// If the inverse logic is true, the strategy
// goes short (last close larger current close).
//
// This simple strategy does not have any
// stop loss or take profit money management logic.
//
// List of my work:
// https://www.tradingview.com/u/ChartArt/
//
// __ __ ___ __ ___
// / ` |__| /\ |__) | /\ |__) |
// \__, | | /~~\ | \ | /~~\ | \ |
//
//
threshold = input(title="Price Difference Threshold repainting results", type=float, defval=0.004, step=0.001)
getDiff() =>
yesterday=security(syminfo.tickerid, 'D', close[1])
today=security(syminfo.tickerid, 'D', close)
delta=today-yesterday
percentage=delta/yesterday
closeDiff = getDiff()
buying = closeDiff > threshold ? true : closeDiff < -threshold ? false : buying[1]
hline(0, title="zero line")
bgcolor(buying ? green : red, transp=25)
plot(closeDiff, color=silver, style=area, transp=75)
plot(closeDiff, color=aqua, title="prediction")
longCondition = buying
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = buying != true
if (shortCondition)
strategy.entry("Short", strategy.short)