Стратегия бэктестинга столбчатой ​​диаграммы стоимости на основе процентного изменения


Дата создания: 2023-11-15 15:41:20 Последнее изменение: 2023-11-15 15:41:20
Копировать: 2 Количество просмотров: 629
1
Подписаться
1617
Подписчики

Стратегия бэктестинга столбчатой ​​диаграммы стоимости на основе процентного изменения

Обзор

Стратегия определяет тенденцию, рассчитывая процент изменения цены закрытия текущей линии K по отношению к цене закрытия перед линией N-конечной линии K и показывая столбиковую диаграмму разных цветов. Стратегия объединяет линию тренда для определения покупки и продажи.

Стратегический принцип

  1. Ввод параметров стратегии, включая ширину графика столбцов, показание изменения цены или изменения процента, просмотр корневых чисел, покупка или продажа на пороге и т. д.

  2. Вычислить разницу или процентную разницу между текущей ценой закрытия K-линии и ценой закрытия K-линии до N-корня.

  3. Установка кривой убыли-продажи.

  4. График столбиков в разных цветах в зависимости от процентной разницы цен.

  5. Процентная разница в цене устанавливается как множественная, если она больше, чем убыток, и как пустая, если она меньше, чем убыток.

  6. Цвет столбика зависит от направления позиции.

  7. Вход и выход в зависимости от направления позиции.

Стратегические преимущества

  1. Интуитивное отображение тенденций изменения цены помогает формировать торговые суждения.

  2. В сочетании с показателями оценки тенденций, можно более четко определить место входа и выхода.

  3. Можно оптимизировать для разных сортов и временных периодов, изменяя параметры.

  4. Операционная логика проста и понятна, легко понять и изменить.

  5. Это очень хорошо визуализируется и позволяет быстро определить направление тренда.

Стратегический риск

  1. Неправильный выбор пункта въезда может привести к убыткам.

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

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

  4. Краткий период отслеживания может не позволить определить прочность параметров.

  5. Не учитывая крайний срок, вы можете упустить возможность вернуться назад.

Риск можно контролировать методами оптимизации параметров, фильтрации сигналов в сочетании с другими показателями, установки стоп-лосса и расширения периода отслеживания.

Направление оптимизации стратегии

  1. Для подтверждения торговых сигналов можно рассматривать их в сочетании с другими индикаторами, такими как индикатор тренда, индикатор волатильности и т. д.

  2. Для оптимизации параметров можно использовать алгоритмы машинного обучения.

  3. Динамическая стоп-убытка может быть установлена для управления единичными потерями.

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

  5. Фильтрационные правила могут быть добавлены в течение определенного периода времени.

  6. Можно оптимизировать циклы обратного измерения, выбирая более длительный период времени для проверки.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v3.0 27/07/2018
//
//  This histogram displays price or % change from previous bar. 
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Percent change bar chart Backtest", precision = 2)
input_barwidth = input(4, title="Bar Width")
input_percentorprice = input(false, title="Price Change")
input_barsback = input(1, title="Look Back")
SellZone = input(-0.33, minval=0.01, step = 0.01)
BuyZone = input(0.33, minval=0.01, step = 0.01)
reverse = input(false, title="Trade reverse")
hline(0, color=blue, linestyle=line)
hline(BuyZone, color=green, linestyle=line)
hline(SellZone, color=red, linestyle=line)
xPrice = close
xPrice1 = iff(input_percentorprice, xPrice - xPrice[input_barsback], ((xPrice - xPrice[input_barsback]) * 100)/ xPrice[input_barsback])
colorg = iff(xPrice1 < 0, red, green)
pos = iff(xPrice1 > BuyZone, 1,
       iff(xPrice1 < SellZone, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(xPrice1, color=colorg, style = histogram, linewidth = input_barwidth, title="Change")