
Chiến lược này dựa trên phần thực tế của candle, kết hợp với chỉ số EMA để xác định xu hướng thị trường, để thực hiện hiệu quả của ORIGINAL PRIMITIVE TREND TRACKING. Khi có mặt trời lớn, hãy làm nhiều hơn và khi có bóng tối lớn, hãy làm trống, để theo dõi xu hướng thị trường.
Chiến lược này có những ưu điểm sau:
Chiến lược này cũng có một số rủi ro:
Bạn có thể làm giảm nguy cơ bằng cách:
Chính sách này có thể được tối ưu hóa bằng cách:
Chiến lược này là một trong những chiến lược theo dõi xu hướng đơn giản và nguyên bản. Bằng cách đánh giá cấu trúc nến, bạn có thể theo dõi hiệu quả hướng xu hướng. Đồng thời thiết lập một cơ chế dừng lỗ nhanh, bạn có thể khóa lợi nhuận. Chiến lược này có thể bổ sung cho danh mục theo dõi xu hướng, nhưng vẫn cần được tối ưu hóa để giảm rủi ro.
/*backtest
start: 2023-10-23 00:00:00
end: 2023-11-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title = "Noro's Primitive Strategy v1.0", shorttitle = "Primitive str 1.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100.0, pyramiding = 10)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
usebody = input(true, defval = true, title = "Use body")
useus = input(true, defval = true, title = "Use UUP")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(01, defval = 01, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
//Logic
body = abs(close - open)
sbody = ema(body, 30) / 2
bar = close > open ? 1 : close < open ? -1 : 0
//Signals
up = bar == -1 and (body > sbody or usebody == false) and (close < strategy.position_avg_price or strategy.position_size <= 0 or useus == false)
dn = bar == 1 and (body > sbody or usebody == false) and (close > strategy.position_avg_price or strategy.position_size >= 0 or useus == false)
//Trading
if up
strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00)))
if dn
strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00)))
if time > timestamp(toyear, tomonth, today, 00, 00)
strategy.close_all()