
Gagasan utama dari strategi ini adalah menggabungkan dua jenis strategi yang berbeda, yaitu strategi 123 reversal dan indikator pergerakan harga absolut, untuk mendapatkan sinyal komposit. Secara khusus, jika kedua strategi tersebut mengirimkan sinyal melakukan banyak, sinyal strategi akhir adalah 1 ((membuat banyak); jika kedua strategi tersebut mengirimkan sinyal melakukan kosong, sinyal strategi akhir adalah -1 ((membuat kosong); jika sinyal kedua strategi tidak konsisten, sinyal terakhir adalah 0 ((tidak melakukan operasi apa pun)).
Pertama, prinsip strategi 123 reversal adalah: Jika harga close out dua hari berturut-turut di bawah harga close out hari sebelumnya dan indikator acak berada di bawah garis overbought, lakukan overbought; Jika harga close out dua hari berturut-turut di atas harga close out hari sebelumnya dan indikator acak berada di atas garis overbought, lakukan overbought.
Kedua, indikator pergerakan harga mutlak menunjukkan perbedaan antara dua rata-rata bergerak indeks. Jika rata-rata bergerak cepat lebih tinggi dari rata-rata bergerak lambat, itu adalah positif, menunjukkan tren naik; sebaliknya, negatif, menunjukkan tren turun.
Terakhir, strategi ini menggabungkan sinyal dari dua strategi anak, yaitu jika keduanya mengeluarkan sinyal yang sama, maka tindakan akan dilakukan pada sinyal tersebut; jika tidak, tidak akan dilakukan.
Strategi ini secara komprehensif mempertimbangkan sinyal pembalikan jangka pendek dan tren jangka menengah dan panjang dari harga, sehingga dapat secara efektif mengidentifikasi titik-titik perubahan dalam pasar. Strategi ini dapat secara signifikan meningkatkan keandalan sinyal, mengurangi terjadinya sinyal yang salah, dibandingkan dengan penggunaan indikator 123 pembalikan atau APO saja.
Selain itu, strategi ini menggunakan berbagai indikator teknis, yang dapat menilai keseluruhan kondisi pasar, bukan hanya bergantung pada satu indikator. Ini dapat mencegah kesalahan penilaian secara keseluruhan karena salah satu indikator.
Risiko terbesar dari strategi ini adalah jika strategi 123 reversal dan indikator APO menghasilkan sinyal yang berbeda. Dalam hal ini, operator perlu menilai sinyal mana yang lebih dapat diandalkan berdasarkan pengalaman mereka sendiri. Jika penilaian menyimpang, kemungkinan kehilangan peluang perdagangan atau kerugian.
Selain itu, jika ada perubahan besar dalam situasi pasar yang menyebabkan sinyal pembalikan jangka pendek dan sinyal tren garis tengah gagal pada saat yang sama, maka sinyal strategi juga akan salah. Operator perlu memperhatikan dampak peristiwa ekonomi politik besar pada situasi pasar dan dapat menangguhkan operasi strategi jika diperlukan.
Strategi ini dapat dioptimalkan dari beberapa arah:
Parameter dari substrategi yang dioptimalkan, membuat sinyal substrategi lebih dapat diandalkan. Misalnya, menyesuaikan parameter siklus rata-rata bergerak.
Menambahkan indikator penilaian tambahan lainnya, membentuk mekanisme pemungutan suara. Ketika beberapa indikator mengirimkan sinyal yang konsisten, sinyal akan lebih dapat diandalkan.
Meningkatkan strategi stop loss. Ketika pergerakan harga tidak sesuai dengan ekspektasi indikator teknis, stop loss yang tepat waktu dapat menghindari perluasan kerugian lebih lanjut.
Optimalkan posisi buka dan berhenti. Bergabung dengan data retrospeksi sejarah, tentukan nilai spesifik yang lebih sesuai.
Strategi ini mengintegrasikan penggunaan beberapa indikator teknis untuk menilai tren, menghindari risiko ketergantungan pada satu indikator, dan meningkatkan akurasi penilaian sinyal. Strategi ini juga memiliki beberapa ruang untuk pengoptimalan, dan investor dapat menyesuaikan parameter sesuai dengan kebutuhan mereka sendiri. Secara keseluruhan, sinyal strategi kuantifikasi harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga harga
/*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=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 22/04/2019
// This is combo strategies for get
// a cumulative signal. Result signal will return 1 if two strategies
// is long, -1 if all strategies is short and 0 if signals of strategies is not equal.
//
// 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.
//
// Secon strategy
// The Absolute Price Oscillator displays the difference between two exponential
// moving averages of a security's price and is expressed as an absolute value.
// How this indicator works
// APO crossing above zero is considered bullish, while crossing below zero is bearish.
// A positive indicator value indicates an upward movement, while negative readings
// signal a downward trend.
// Divergences form when a new high or low in price is not confirmed by the Absolute Price
// Oscillator (APO). A bullish divergence forms when price make a lower low, but the APO
// forms a higher low. This indicates less downward momentum that could foreshadow a bullish
// reversal. A bearish divergence forms when price makes a higher high, but the APO forms a
// lower high. This shows less upward momentum that could foreshadow a bearish reversal.
//
// 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
AbsolutePriceOscillator(LengthShortEMA, LengthLongEMA) =>
xPrice = close
xShortEMA = ema(xPrice, LengthShortEMA)
xLongEMA = ema(xPrice, LengthLongEMA)
xAPO = xShortEMA - xLongEMA
pos = 0.0
pos := iff(xAPO > 0, 1,
iff(xAPO < 0, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal and Absolute Price Oscillator (APO)", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
LengthShortEMA = input(10, minval=1)
LengthLongEMA = input(20, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posAbsolutePriceOscillator = AbsolutePriceOscillator(LengthShortEMA, LengthLongEMA)
pos = iff(posReversal123 == 1 and posAbsolutePriceOscillator == 1 , 1,
iff(posReversal123 == -1 and posAbsolutePriceOscillator == -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 ? red: possig == 1 ? green : blue )