Эта стратегия позволяет осуществлять короткую торговлю биткойном, используя True Strength Index (TSI) для выявления тенденций на рынке, и в сочетании с RSI-фильтрацией для проведения дополнительных коротких периодов. Эта стратегия подходит для инвесторов, которые программируют торговлю на биткоин-рынке по факту.
Эта стратегия основана на показателях истинной силы и слабости (TSI). TSI измеряет величину и направление абсолютных значений изменения цены с помощью двойного сглаживания. Таким образом, определяется абсолютная сила роста и падения цен.
Помимо этого, стратегия также сочетает в себе фильтрацию индикатора RSI на торговые сигналы TSI, которые производят многосигналы только тогда, когда значение RSI больше 50, и только тогда, когда значение RSI меньше 50, что отфильтровывает некоторые ложные сигналы.
Эта стратегия имеет следующие преимущества:
Также существуют следующие риски:
Можно снизить эффект колебаний и задержки путем соответствующего ослабления условий фильтрации RSI, сокращения циклов EMA и т. Д. При этом оптимизировать стратегию остановки убытков и строго контролировать риск отдельных сделок.
Эта стратегия может быть оптимизирована в следующих аспектах:
Оптимизируйте параметры TSI и RSI, чтобы найти оптимальное сочетание параметров. Можно скорректировать длинные и короткие циклы EMA, параметры RSI и т. Д.
Добавление других показателей в комбинацию с другими показателями, чтобы сформировать многофакторную модель. Например, можно добавить показатели MA, KD и т. Д., чтобы в полной мере использовать преимущества каждого показателя.
Оптимизируйте условия входа, избегайте столкновения многоголовых рынков. Вы можете определить направление в зависимости от тенденции большого цикла.
Оптимизация стратегии остановки убытков, например, мобильная остановка, временная остановка, преодоление остановки убытков.
Оптимизация условий выхода из игры, предотвращение преждевременного или позднего выхода из игры. Можно объединить показатели волатильности, чтобы определить, когда уйти.
Оптимизация торговых сортов и периодов, концентрация на наиболее эффективных сортах и периодах.
Эта стратегия использует реальные сильные и слабые индикаторы для определения краткосрочных тенденций в биткоине, а также фильтрует сигналы RSI, что позволяет эффективно проводить короткую программированную торговлю в биткоине. Эта стратегия обладает преимуществами чувствительного распознавания тенденций, удаления шума, но также имеет определенные проблемы с отставанием и рисками торговли.
/*backtest
start: 2022-09-30 00:00:00
end: 2023-10-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// strategy("True Strength Indicator BTCUSD 15p", shorttitle="TSI BTCUSD 15p",initial_capital=1000, commission_value=0.15, commission_type =strategy.commission.percent, default_qty_value=100 , overlay = false, pyramiding=10, default_qty_type=strategy.percent_of_equity)
//BASED ON True Strength Indicator MTF
resCustom = input(title="Timeframe", defval="15" )
long = input(title="Long Length", defval=25)
short = input(title="Short Length", defval=13)
signal = input(title="Signal Length", defval=13)
price = request.security(syminfo.tickerid,resCustom,close)
double_smooth(src, long, short) =>
fist_smooth = ta.ema(src, long)
ta.ema(fist_smooth, short)
pc = ta.change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(math.abs(pc), long, short)
tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
tsi2=ta.ema(tsi_value, signal)
plot(tsi_value, color=color.lime,linewidth=2)
plot(tsi2, color=color.red,linewidth=2)
rsiserie = ta.rsi(price,7)
cciserie = ta.cci(price,14)
stochserie = ta.stoch(price,14,3,3)
plot(rsiserie,color=color.purple)
hline(30, title="Zero")
hline(50, title="Zero",linestyle=hline.style_solid, linewidth=2)
hline(70, title="Zero")
buy = ta.crossover(tsi_value, tsi2) //and rsiserie[1]<25 //and cciserie<-100 and stochserie<20
sell = ta.crossunder(tsi_value, tsi2) //and rsiserie[1]>85 //and cciserie>100 and stochserie>80
alertcondition(buy, title='TSI system', message='Buy signal at!' )
alertcondition(sell, title='TSI system', message='Sell signal at!' )
strategy.entry("BUY", strategy.long, 1, when = buy)
strategy.entry("SELL", strategy.short, 1, when = sell )
greentsi =tsi_value
redtsi = tsi2
bgcolor( greentsi>redtsi and rsiserie > 50 ? color.lime : na, transp=90)
bgcolor( greentsi<redtsi and rsiserie < 50 ? color.red : na, transp=90)
yellow1= redtsi > greentsi and rsiserie > 50
yellow2 = redtsi < greentsi and rsiserie < 50
bgcolor( yellow1 ? yellow : na, transp=80)
bgcolor( yellow2 ? yellow : na, transp=50)
bgcolor( yellow1 and yellow1[1] ? yellow : na, transp=70)
bgcolor( yellow2 and yellow2[2] ? yellow : na, transp=70)
bgcolor( rsiserie > 70 ? color.lime : na, transp=60)
bgcolor( rsiserie < 30 ? color.red : na, transp=60)