
Strategi reversal dengan kombinasi indikator stoker dan indikator bull, untuk melakukan filter sinyal ganda, melakukan reversal trading pada titik pivot pasar, mengejar overshooting.
Strategi ini terdiri dari dua bagian:
Menggunakan strategi reversal yang dikemukakan oleh Ulf Jansen dalam bukunya How I Triple My Money in the Futures Market. Berinvestasi ketika harga penutupan 2 hari berturut-turut lebih tinggi dari harga penutupan hari sebelumnya, sementara indikator K-line lambat pada hari ke-9 berada di bawah 50. Berinvestasi ketika harga penutupan 2 hari berturut-turut lebih rendah dari harga penutupan hari sebelumnya, sementara indikator K-line cepat pada hari ke-9 berada di atas 50.
Menggunakan indikator momentum yang dikemukakan oleh Vadim Gimel Fab dalam buku karyanya Bull Bear Balance Indicator Box. Dengan menghitung hubungan antara garis K saat ini dan garis K sebelumnya, ia menilai kekuatan polygon dan memberikan sinyal polygon.
Strategi ini menggabungkan dua strategi sinyal tunggal yang disebutkan di atas dan mengirimkan sinyal perdagangan ketika keduanya konsisten, mengurangi sinyal palsu dengan penyaringan ganda.
Strategi ini menggabungkan keunggulan strategi reversal dan strategi tracking, mampu menangkap sinyal reversal di pasar pada waktu yang tepat, sekaligus mengurangi sinyal palsu melalui penyaringan dua sinyal, dan menghindari mengejar kenaikan dan penurunan. Keuntungan spesifiknya adalah sebagai berikut:
Strategi ini juga memiliki beberapa risiko, dengan sumber utama sebagai berikut:
Langkah-langkahnya adalah sebagai berikut:
Strategi ini juga dapat dioptimalkan dalam beberapa hal:
Strategi reversal yang terobosan dengan dinamika dua dimensi, yang memungkinkan penyaringan sinyal ganda dan perdagangan reversal melalui kombinasi indikator Stoker dan indikator Bull. Ini dapat menangkap peluang reversal pasar dan menghindari kebisingan yang dihasilkan oleh sinyal tunggal, merupakan strategi kuantitatif yang stabil dan efektif. Strategi ini dapat ditingkatkan dengan cara optimasi parameter, strategi stop-loss, dan pengujian sinyal, dan lain-lain.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 05/07/2019
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// Bull Power Indicator
// To get more information please see "Bull And Bear Balance Indicator"
// by Vadim Gimelfarb.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
BullPower(SellLevel, BuyLevel) =>
pos = 0
value = iff (close < open ,
iff (close[1] < open , max(high - close[1], close - low), max(high - open, close - low)),
iff (close > open,
iff(close[1] > open, high - low, max(open - close[1], high - low)),
iff(high - close > close - low,
iff (close[1] < open, max(high - close[1], close - low), high - open),
iff (high - close < close - low,
iff(close[1] > open, high - low, max(open - close, high - low)),
iff (close[1] > open, max(high - open, close - low),
iff(close[1] < open, max(open - close, high - low), high - low))))))
pos := iff(value > SellLevel, -1,
iff(value <= BuyLevel, 1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Bull Power", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SellLevel = input(15, step=1)
BuyLevel = input(3, step=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBullPower = BullPower(SellLevel, BuyLevel)
pos = iff(posReversal123 == 1 and posBullPower == 1 , 1,
iff(posReversal123 == -1 and posBullPower == -1, -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)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )