
Strategi Binary Indicator Following adalah strategi perdagangan kuantitatif mata uang digital. Strategi ini menghasilkan sinyal perdagangan dengan menggabungkan sinyal dari dua indikator dasar, yaitu 123 Reverse Indicator dan Qstick Indicator, dan memutuskan masuk atau tidak berdasarkan konsistensi dari dua indikator tersebut.
Strategi ini terdiri dari dua bagian:
Sinyal perdagangan untuk indikator ini berasal dari harga penutupan dua garis K terakhir. Sinyal perdagangan dihasilkan jika harga penutupan dua garis K terakhir berbalik ((yaitu, harga penutupan berubah dari naik ke turun atau dari turun ke naik), dan pada saat yang sama memenuhi kondisi indikator acak.
Secara khusus, jika dua hari sebelumnya harga penutupan turun, harga penutupan hari ini naik, sementara pada hari ke-9 garis lambat acak di bawah 50, menghasilkan sinyal beli; jika dua hari sebelumnya harga penutupan naik, harga penutupan hari ini turun, sementara pada hari ke-9 garis cepat acak di atas 50, menghasilkan sinyal jual.
Indikator ini menilai kekuatan multipel dan kosong dengan menghitung rata-rata bergerak sederhana dari perbedaan antara harga buka dan tutup. Ini menghasilkan sinyal perdagangan dengan melewati sumbu nol.
Jika Qstick melewati sumbu nol di atas, berarti kekuatan multihead meningkat, menghasilkan sinyal beli; Jika Qstick melewati sumbu nol di bawah, berarti kekuatan kosong meningkat, menghasilkan sinyal jual.
Indikator dual-base mengikuti strategi yang mempertimbangkan sinyal perdagangan dari indikator 123 reversal dan indikator Qstick secara menyeluruh, dan mengambil tindakan perdagangan yang sesuai ketika kedua sinyalnya sesuai.
Indikator dual-base mengikuti strategi yang menggabungkan sinyal dari dua jenis indikator yang berbeda, yang dapat meningkatkan akurasi sinyal perdagangan. Dibandingkan dengan indikator tunggal, dapat secara efektif mengurangi sinyal yang salah dan mendapatkan tingkat kemenangan yang lebih tinggi.
Selain itu, strategi ini hanya berlaku jika dua sinyal indikatornya sama, sehingga dapat secara efektif mengendalikan risiko dan mencegah perbedaan dua basis.
Parameter dari kedua indikator dapat disesuaikan dengan pengoptimalan parameter, sehingga frekuensi dan ritme sinyal yang dihasilkan lebih selaras.
Anda dapat mengatur periode kepemilikan minimum untuk menghindari pembatalan dan pembentukan mandat yang sering terjadi.
Optimalkan parameter panjang dari kedua indikator untuk menemukan kombinasi parameter terbaik
Uji konfigurasi parameter indikator acak yang berbeda
Menambahkan strategi stop loss
Indikator dual-base mengikuti strategi dengan menggabungkan keunggulan dari beberapa indikator dasar, yang dapat meningkatkan kualitas sinyal dan memperoleh keuntungan yang lebih tinggi sambil mengendalikan risiko. Strategi ini memiliki ruang untuk optimasi parameter dan optimasi strategi lebih lanjut, dan dengan pengujian dapat membuat strategi lebih stabil dan dapat diandalkan.
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 24/05/2021
// 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
// A technical indicator developed by Tushar Chande to numerically identify
// trends in candlestick charting. It is calculated by taking an 'n' period
// moving average of the difference between the open and closing prices. A
// Qstick value greater than zero means that the majority of the last 'n' days
// have been up, indicating that buying pressure has been increasing.
// Transaction signals come from when the Qstick indicator crosses through the
// zero line. Crossing above zero is used as the entry signal because it is indicating
// that buying pressure is increasing, while sell signals come from the indicator
// crossing down through zero. In addition, an 'n' period moving average of the Qstick
// values can be drawn to act as a signal line. Transaction signals are then generated
// when the Qstick value crosses through the trigger line.
//
// 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
Qstick(Length) =>
pos = 0.0
xR = close - open
xQstick = sma(xR, Length)
pos:= iff(xQstick > 0, 1,
iff(xQstick < 0, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Qstick Indicator", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Qstick Indicator ----")
LengthQ = input(14, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posQstick = Qstick(LengthQ)
pos = iff(posReversal123 == 1 and posQstick == 1 , 1,
iff(posReversal123 == -1 and posQstick == -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 )