Стратегия отслеживания трендов и прибылей предназначена для обнаружения долгосрочных тенденций и краткосрочных отклонений в активах, для создания позиций при использовании краткосрочных корректировок при долгосрочном позиционировании, а также для установления разумной линии остановки и убытков, чтобы вовремя остановить убытки.
Эта стратегия основана на средней линии EMA и RSI, чтобы определить долгосрочные тенденции. В частности, она использует 50-дневную линию EMA и 200-дневную линию EMA, чтобы определить долгосрочные тенденции, используя RSI, чтобы определить долгосрочные тенденции.
После входа в рынок, стратегия устанавливает условия для остановки и уменьшения убытков. Если цена выросла более чем в 2 раза по сравнению с начальной ценой, то она становится выгодной. Если цена упала более чем в 3 раза по сравнению с начальной ценой, то она становится равной.
Таким образом, стратегия полностью учитывает долгосрочные и краткосрочные тенденции, одновременно повышая прибыль и контролируя риски.
Эта стратегия имеет следующие преимущества:
Принимая во внимание долгосрочные и краткосрочные тенденции, а также сильные и слабые индикаторы, избегайте слепого позиционирования на рынке во время колебаний.
Позиции, основанные на тенденциях, в соответствии с направлением рынка, имеют высокий коэффициент выигрыша.
Установка точки остановки и остановки убытков способствует своевременному получению прибыли и контролю рисков.
Стоп-стоп-стоп-стоп может быть динамически изменен в зависимости от рыночной волатильности.
Отзывные данные показывают высокую прибыльность и стабильность этой стратегии в различных валютных парах и циклах.
Стратегическая концепция проста и понятна, легко понятна и реализуема, подходит для трейдеров всех уровней.
Однако эта стратегия также несет в себе определенные риски:
Возможность ошибок в долгосрочных и краткосрочных суждениях, возможности ошибочного суждения о направлении построения позиций.
Рынок может обрушиться на обрыв, и стоп-пост не позволит полностью избежать риска больших потерь.
Неправильная параметровая настройка (например, средний цикл) может повлиять на эффективность стратегии.
Слишком маленькие ограничения могут повлиять на доход.
Данные отслеживания не являются показателями реального диска, и в течение реального диска требуется постоянная оптимизация.
Решение риска:
Оптимизация параметров, корректировка среднелинейного цикла или добавление других показателей для определения силы.
Можно установить более высокую степень стоп-лосса или добавить такие механизмы управления ветром, как снижение позиции.
Проводить повторные тесты, оценивать влияние различных параметров на стратегию.
Динамическая оптимизация параметров сдерживания, корректировка сдерживания в зависимости от ситуации на рынке.
Постоянное отслеживание и оптимизация, в сочетании с корректировкой на диске, делают стратегию более стабильной.
Эта стратегия может быть улучшена в следующих аспектах:
Оптимизация параметров, например, адаптация среднелинейных циклов, BHD, чтобы найти оптимальную комбинацию параметров.
Добавление других показателей, таких как MACD, KD и т. д., чтобы сделать более точные краткосрочные суждения.
Оптимизация стратегии стоп-стоп, например, изменение стоп-стоп в зависимости от динамики волатильности.
Добавление стратегий управления позициями, таких как влияние силы тренда на размер позиции и т. д.
Для того, чтобы оценить эффективность стратегии, необходимо тестировать данные по большему количеству разновидностей и циклов.
Добавление фильтров, таких как цена закрытия выше, чем цена открытия, позволяет избежать ловушки.
Добавление передовых технологий, таких как машинное обучение, чтобы сделать стратегию более автоматизированной и интеллектуальной.
Благодаря этой оптимизации можно повысить эффективность стратегии в таких аспектах, как вероятность победы, доходность, стабильность и адаптивность.
С точки зрения стратегии отслеживания тренда, имеющей такие преимущества, как учет долгосрочных и краткосрочных характеристик, последовательность и четкое определение стоп-стоп, она является более стабильной и эффективной стратегией отслеживания тренда. Но также существует определенный риск, требующий постоянного тестирования параметров и правил для оптимизации в сочетании с корректировкой реальной ситуации.
/*backtest
start: 2023-08-26 00:00:00
end: 2023-09-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/
// © BHD_Trade_Bot
// @version=5
strategy(
shorttitle = 'Take Profit On Trend',
title = 'Take Profit On Trend (by BHD_Trade_Bot)',
overlay = true,
calc_on_every_tick = true,
calc_on_order_fills = true,
use_bar_magnifier = true,
initial_capital = 1000,
default_qty_type = strategy.percent_of_equity,
default_qty_value = 100,
commission_type = strategy.commission.percent,
commission_value = 0.1)
// Backtest Time Period
start_year = input(title='Start year' ,defval=2021)
start_month = input(title='Start month' ,defval=1)
start_day = input(title='Start day' ,defval=1)
start_time = timestamp(start_year, start_month, start_day, 00, 00)
end_year = input(title='end year' ,defval=2050)
end_month = input(title='end month' ,defval=1)
end_day = input(title='end day' ,defval=1)
end_time = timestamp(end_year, end_month, end_day, 23, 59)
is_back_test_time() => true
// EMA
ema50 = ta.ema(close, 50)
ema200 = ta.ema(close, 200)
// RSI
rsi200 = ta.rsi(close, 200)
// EMA_CD
emacd = ema50 - ema200
emacd_signal = ta.ema(emacd, 50)
hist = emacd - emacd_signal
// BHD Unit
bhd_unit = ta.rma(high - low, 200) * 2
bhd_upper = ema200 + bhd_unit
bhd_lower = ema200 - bhd_unit
// All n candles is going down
all_body_decrease(n) =>
isValid = true
for i = 0 to (n - 1)
if (close[i] > close[i + 1])
isValid := false
break
isValid
// ENTRY CONDITIONS
// Long-term uptrend
entry_condition1 = rsi200 > 51 and hist > 0
// Short-term downtrend
entry_condition2 = all_body_decrease(2)
ENTRY_CONDITIONS = entry_condition1 and entry_condition2
if ENTRY_CONDITIONS and is_back_test_time()
strategy.entry('entry', strategy.long)
// CLOSE CONDITIONS
// Price increase 2 BHD unit
take_profit = close > strategy.position_avg_price + bhd_unit * 2
// Price decrease 3 BHD unit
stop_loss = close < strategy.position_avg_price - bhd_unit * 3
CLOSE_CONDITIONS = take_profit or stop_loss
if CLOSE_CONDITIONS
strategy.close('entry')
// Draw
plot(ema50, color=color.orange, linewidth=2)
plot(ema200, color=color.purple, linewidth=2)
bhd_upper_line = plot(bhd_upper, color=color.teal)
bhd_lower_line = plot(bhd_lower, color=color.teal)
fill(bhd_upper_line, bhd_lower_line, color=color.new(color.teal, 90))