
Chiến lược này dựa trên thời điểm cuối tháng để đánh giá giá trị của cổ phiếu đã vượt qua đường trung bình di chuyển 200 ngày để nắm bắt xu hướng của giá cổ phiếu. Xây dựng vị trí nhiều đầu khi giá vượt qua đường trung bình 200 ngày, nếu không hãy chờ đợi.
Chiến lược này nói chung là đơn giản và thực tế, bằng cách phá vỡ đường trung bình 200 ngày vào cuối tháng, có hiệu quả trong việc nắm bắt xu hướng giá trung bình và dài hạn của cổ phiếu, rút lại và rủi ro nhỏ hơn. Bằng cách kết hợp nhiều phán đoán chỉ số và tối ưu hóa động lực, bạn có thể tăng cường sự ổn định và lợi nhuận của chiến lược hơn nữa.
/*backtest
start: 2022-12-01 00:00:00
end: 2023-12-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © muscleriot
//200 dma
//2000-2016 backtested
//1 signal per month only at end of month
//If > 200DMA enter long
//If < 200DMA goto cash
//results: 318% drawdown 17% vs 125% with 55% drawdown for buy and hold
//@version=5
strategy("200DMA last DOM - ajh", overlay =true,default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// Use 100% of equity always
dma200 = ta.sma(close, 200)
plot(dma200, color=color.red, linewidth = 2)
//e =dayofmonth(time)
// backtesting date range
from_day = input.int(defval=1, title="From Day", minval=1, maxval=31)
from_month = input.int(defval=1, title="From Month", minval=1, maxval=12)
from_year = input.int(defval=2018, title="From Year", minval=1900)
to_day = input.int(defval=1, title="To Day", minval=1, maxval=31)
to_month = input.int(defval=1, title="To Month", minval=1, maxval=12)
to_year = input.int(defval=9999, title="To Year", minval=1900)
time_cond = time > timestamp(from_year, from_month, from_day, 00, 00) and
time < timestamp(to_year, to_month, to_day, 23, 59)
xLong = dayofmonth(time) == 30 and (close > dma200) ? true : na
xSell = dayofmonth(time) == 30 and (close < dma200) ? true : na
plotchar(xLong, "long","L", color=color.green)
plotchar(xSell, "Sell","S", color=color.red)
if (xLong == true) and time_cond
strategy.entry("long", strategy.long)
if (xSell == true) and time_cond
strategy.close("long")