Estrategia manual de alertas de compra y venta

El autor:¿ Qué pasa?, fecha: 2024-02-21 11:02:02
Las etiquetas:

img

Esta estrategia es una herramienta manual de alerta de compra y venta que puede establecer el precio de compra, precio de venta y otros parámetros.

Resumen de la estrategia

Esta estrategia es una herramienta de trading manual no automatizada. Puede generar alertas para que los usuarios compren y vendan a precios preestablecidos. Los usuarios pueden establecer lo siguiente:

  1. Periodo de tiempo
  2. Precio de entrada y tipo de entrada (precio de stop loss o precio límite)
  3. Precio objetivo
  4. Precio de suspensión de pérdidas

La estrategia puede probarse fácilmente cambiando el valor del ciclo y estableciendo el valor.

Principio de la estrategia

  1. Los usuarios establecen primero el período de tiempo durante el cual la estrategia es válida.
  2. A continuación, configure el tipo de compra para detener la pérdida o el precio límite, y el precio de compra específico.
  3. Establezca el precio objetivo y el precio de stop loss.
  4. Cuando el precio activa la condición de compra, se emitirá una alerta de compra. Por ejemplo, si elige stop loss, cuando el precio es inferior al precio de compra establecido, se emitirá una alerta de compra.
  5. Durante el período de retención, si se activa el precio objetivo, se emitirá una alerta de venta.

De esta manera, los usuarios pueden determinar manualmente la oportunidad de negociación sobre la base de la información de alerta sin necesidad de una colocación de órdenes automatizada, que es más flexible.

Análisis de ventajas

  1. La mayor ventaja de esta estrategia es el funcionamiento flexible: los usuarios pueden decidir si compran o venden basándose en su propio juicio en lugar de la negociación automatizada, lo que da más control.
  2. Al establecer el stop loss y el precio objetivo, el riesgo se puede controlar eficazmente para evitar pérdidas enormes.
  3. Se pueden probar diferentes estrategias comerciales ajustando las condiciones de compra y los parámetros para la optimización.
  4. Como herramienta de ayuda al comercio manual, puede desempeñar un gran papel y mejorar la eficiencia del comercio.

Análisis de riesgos

  1. La estrategia se basa en el juicio operativo del usuario.
  2. En un mercado que cambia rápidamente, los mensajes de alerta pueden retrasarse, lo que lleva a decisiones comerciales erróneas.
  3. Si no se presta mucha atención y se opera a tiempo, se puede perder la mejor oportunidad comercial.
  4. La configuración incorrecta de parámetros también puede afectar el rendimiento de la estrategia y necesita pruebas y optimización iterativas.

Para reducir los riesgos, se recomienda utilizar el stop loss para limitar las pérdidas; prestar mucha atención al mercado en momentos críticos y operar de manera oportuna; y realizar pruebas de varias rondas para optimizar los parámetros.

Dirección de optimización

  1. Se pueden establecer mecanismos de stop loss más complejos, como movimiento de stop loss, swing stop loss, etc.
  2. Se pueden añadir más tipos de condiciones de negociación, como las operaciones de ruptura.
  3. Se pueden añadir mecanismos de gestión de la posición, como la pirámide o la reducción de la posición.
  4. Se pueden añadir más condiciones de filtrado para evitar operaciones incorrectas.
  5. Las alertas se pueden enviar a través de mensajes de Telegram o WeChat.
  6. Los parámetros pueden guardarse como plantillas para un ajuste y pruebas rápidos.

Con estas optimizaciones, la herramienta puede ser más fácil de usar e inteligente para mejorar la eficiencia del comercio manual.

Resumen de las actividades

Como una herramienta para ayudar a la negociación manual, la mayor ventaja de esta estrategia es su operación flexible, que permite a los usuarios determinar completamente las oportunidades de negociación basadas en su propio juicio, en comparación con las estrategias de negociación automatizadas. Al mismo tiempo, también proporciona funciones de configuración de parámetros para que los usuarios puedan probar fácilmente diferentes estrategias comerciales, verificar ideas comerciales y servir múltiples propósitos. Por supuesto, como herramienta, también requiere que los usuarios la optimicen y mejoren continuamente para que pueda adaptarse a necesidades comerciales más complejas y desempeñar un papel más importante.


/*backtest
start: 2024-01-21 00:00:00
end: 2024-02-20 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © MGTG

title_name = 'Manual Buy & Sell Alerts'

//@version=5
strategy(
 title=title_name, overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, 
 pyramiding=1, commission_type=strategy.commission.percent, commission_value=0.1)

// Period
sTime         = input(timestamp("2020-01-01"), "Start", group="Period", inline='1')
eTime         = input(timestamp("2030-01-01"), "End", group="Period", inline='2')
inDateRange   = true

// Bot Set-up
buy_type = input.string('stop', 'Buy Type', group='Buy&Sell', inline='1', options=['stop', 'limit'])
buy_price = input.float(49000, 'Buy Price', group='Buy&Sell', inline='1')

target_price = input.float(51000, 'Target Price', group='Buy&Sell', inline='2')
stop_price = input.float(47000, 'Stop Price', group='Buy&Sell', inline='2')
avg_price = strategy.position_avg_price
division = 1

// Alert message
AlertLong=input.string("Buy message", "Buy Alert Message",  group='Alert set-up', inline='1')
AlertExit=input.string("Sell message", "Sell Alert Message",  group='Alert set-up', inline='1')

plot(buy_price, 'Buy Price', color=color.new(#009688, 0), style=plot.style_linebr, offset=1)
plot(target_price, 'Take Profit', color=color.new(color.orange, 0), style=plot.style_linebr, offset=1)
plot(stop_price, 'Safety', color=color.new(color.aqua, 0), style=plot.style_linebr, offset=1)

posSize = 
 strategy.equity / close

strategy.exit("sell", "buy", limit=target_price, stop=stop_price, alert_message=AlertExit)

longCondition = inDateRange and strategy.position_size == 0
if longCondition and buy_type == 'stop'
    strategy.entry("buy", strategy.long, qty=posSize, stop=buy_price, when=close < buy_price, comment="buy_STOP", alert_message=AlertLong)

if longCondition and buy_type == 'limit'
    strategy.entry("buy", strategy.long, qty=posSize, limit=buy_price, when=close > buy_price, comment="buy_LIMIT", alert_message=AlertLong)

Más.