Простая стратегия покупки с низкой ценой

Автор:Чао Чжан, Дата: 2023-12-26 10:49:19
Тэги:

img

Обзор

Стратегия покупки низкой продажи высокой является очень простой, но эффективной долгосрочной торговой стратегией. Эта стратегия автоматически покупает криптовалюты после значительного снижения и продает, когда увеличение достигает установленной цели, тем самым получая прибыль во время крупных колебаний рынка.

Принцип стратегии

Ядро этой стратегии заключается в том, чтобы судить о том, пережил ли рынок значительный спад, рассчитывая взлеты и падения цен на криптовалюты за данный период. Когда цены на криптовалюты резко упали за пределы установленного порога за последний период времени, это указывает на то, что рынок может быть чрезвычайно паническим. Стратегия затем автоматически будет покупать. Кроме того, эта стратегия также устанавливает точки остановки потери и получения прибыли, которые автоматически запускают остановку потери или получают прибыль, когда цены достигают этих двух точек.

В частности, эта стратегия использует функцию trailing_change для расчета общих взлетов и падений цен на криптовалюты за данный период. Когда взлеты и падения цен на криптовалюты в пределах последних свечей inp_lkb ниже отрицательного значения установленного параметра, это является основным снижением, которое отвечает условию покупки. В это время, в течение временного окна бэкстеста, будет задействован ордер покупки стратегии.

После покупки эта стратегия будет отслеживать изменения цены в режиме реального времени и устанавливать два условия выхода: (1) Когда цена падает ниже (1 - процент стоп-лосса) % от цены открытия, будет задействован ордер стоп-лосса; (2) Когда цена вырастет выше (1 + процент получения прибыли) % от цены открытия, будет задействован ордер получения прибыли.

Анализ силы

Самым большим преимуществом этой стратегии покупки низкой и продажи высокой является то, что она очень проста и проста в исполнении. Она не требует сложных технических индикаторов, полагаясь исключительно на взлеты и падения цен в течение последнего периода, чтобы судить о рыночных условиях, что делает ее очень подходящей для начинающих трейдеров. В то же время покупка низкой и продажа высокой также является эффективной долгосрочной стратегией, особенно на сильно волатильном рынке криптовалют. Такие контрарные торговые стратегии могут приносить значительную долгосрочную отдачу.

Кроме того, эта стратегия поддерживает настройки стоп-лосса и прибыли, которые могут эффективно контролировать потерю отдельных сделок и блокировать некоторые прибыли. Это также делает стратегию подходящей для торговли в режиме реального времени, даже если на рынке наблюдаются большие неблагоприятные колебания, потерю можно контролировать в пределах доступного диапазона.

Анализ рисков

Основной риск этой стратегии заключается в том, что невозможно определить сроки переворотов на рынке. Если рынок продолжает снижаться без восстановления, открытые длинные позиции могут испытывать большие плавающие потери. Поэтому установка точек остановки является решающей. Если точки остановки установлены слишком широко, единичные потери могут быть разрушительными.

Еще один риск, который следует отметить, заключается в том, что при сильном колебании рынка цены могут запустить стоп-лосс или получить прибыль в течение короткого периода времени. Это может привести к дополнительным торговым затратам.

Для устранения вышеуказанных рисков мы можем установить более длительный период обратной связи, чтобы обеспечить более стабильные и надежные сигналы покупки, которые фильтруют некоторые ложные сигналы в колебаниях рынка. Кроме того, может быть введен определенный период охлаждения торговли. Не открытие новых позиций в течение определенного периода времени после закрытия позиций также может эффективно уменьшить проблему чрезмерно высокой частоты торговли, вызванной колебаниями цен.

Руководство по оптимизации

Эта стратегия может быть еще более оптимизирована, в основном в следующих аспектах:

  1. Динамически корректировать параметры стоп-лосса и прибыли. Динамически корректировать диапазон стоп-лосса и прибыли на основе волатильности рынка.

  2. В дополнение к недавним взлетам и падениям, могут быть введены другие факторы, такие как изменения объема торговли, для определения более надежных сигналов отмены.

  3. После остановки потерь или получения прибыли, определенные стратегии повторного входа могут быть установлены для выкупа новых возможностей обратного движения.

Заключение

В целом, эта стратегия покупки низкой продажи высокой хорошо подходит для очень волатильных криптовалютных рынков. Она захватывает возможности переворота рынка и устанавливает стоп-лосс и получает прибыль для контроля рисков. Эта стратегия очень проста, легко понятна и реализуется, что делает ее идеальной для начинающих трейдеров. При дальнейшей оптимизации можно получить более стабильную производительность стратегии. В итоге покупка низкой и продажа высокой является долгосрочной торговой стратегией, которую стоит рекомендовать.


/*backtest
start: 2023-11-25 00:00:00
end: 2023-12-25 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/
// © Coinrule

//@version=3
strategy(shorttitle='Buy the Dips',title='Buy the Dips (by Coinrule)', overlay=true, initial_capital = 1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)

//Backtest dates
fromMonth = input(defval = 1,  title = "From Month")     
fromDay   = input(defval = 10,    title = "From Day")       
fromYear  = input(defval = 2020, title = "From Year")       
thruMonth = input(defval = 1,    title = "Thru Month")     
thruDay   = input(defval = 1,    title = "Thru Day")     
thruYear  = input(defval = 2112, title = "Thru Year")       

showDate  = input(defval = true, title = "Show Date Range")

start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)        // backtest start window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)        // backtest finish window
window()  => time >= start and time <= finish ? true : false       // create function "within window of time"

inp_lkb = input(1, title='Lookback Period')
 
perc_change(lkb) =>
    overall_change = ((close[0] - close[lkb]) / close[lkb]) * 100

// Call the function    
overall = perc_change(inp_lkb)

//Entry

dip= -(input(2))

strategy.entry(id="long", long = true, when = overall< dip and window()) 

//Exit
Stop_loss= ((input (2))/100)
Take_profit= ((input (2))/100)

longStopPrice  = strategy.position_avg_price * (1 - Stop_loss)
longTakeProfit = strategy.position_avg_price * (1 + Take_profit)

strategy.close("long", when = close < longStopPrice or close > longTakeProfit and window())


Больше