
Strategi perdagangan retracement adalah strategi perdagangan yang didasarkan pada rata-rata bergerak. Strategi ini menghitung titik pusat harga, yaitu posisi pusat berat, dan membangun saluran harga, sebagai koridor untuk penawaran aset. Strategi ini dapat diubah dalam pengaturan masukan menjadi kosong.
Strategi ini menghitung posisi pusat berat dengan fungsi regresi linier. Secara khusus, ia menghitung regresi linier dari harga penutupan dengan panjang siklus Length, yaitu titik pusat peg harga. Kemudian, berdasarkan ini, bergerak ke atas dan ke bawah untuk membangun saluran harga. Perbatasan bawah di saluran harga berfungsi sebagai sinyal plus dan minus, masing-masing.
Ini adalah strategi terobosan yang sangat sederhana, dengan beberapa keuntungan:
Strategi ini juga memiliki beberapa risiko:
Anda dapat mengontrol risiko dengan menyesuaikan parameter Bands, Length, dan lain-lain. Anda juga dapat mengatur stop loss untuk membatasi kerugian maksimum.
Strategi ini dapat dioptimalkan lebih lanjut:
Strategi perdagangan yang fokus pada pengembalian adalah strategi terobosan yang sederhana. Ini memiliki pemikiran yang jelas, kepraktisan yang lebih kuat, pengaturan parameter yang fleksibel.
/*backtest
start: 2023-11-11 00:00:00
end: 2023-12-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 15/03/2018
// The indicator is based on moving averages. On the basis of these, the
// "center" of the price is calculated, and price channels are also constructed,
// which act as corridors for the asset quotations.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Center Of Gravity Backtest", shorttitle="CFO", overlay = true)
Length = input(20, minval=1)
m = input(5, minval=0)
Percent = input(1, minval=0)
SignalLine = input(1, minval=1, maxval = 2, title = "Trade from line (1 or 2)")
reverse = input(false, title="Trade reverse")
xLG = linreg(close, Length, m)
xLG1r = xLG + ((close * Percent) / 100)
xLG1s = xLG - ((close * Percent) / 100)
xLG2r = xLG + ((close * Percent) / 100) * 2
xLG2s = xLG - ((close * Percent) / 100) * 2
xSignalR = iff(SignalLine == 1, xLG1r, xLG2r)
xSignalS = iff(SignalLine == 1, xLG1s, xLG2s)
pos = iff(close > xSignalR, 1,
iff(close < xSignalS, -1, nz(pos[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)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xLG, color=blue, title="CFO")
plot(xLG1r, color=green, title="LG1r")
plot(xLG2r, color=green, title="LG2r")
plot(xLG1s, color=red, title="LG1s")
plot(xLG2s, color=red, title="LG2s")