Chiến lược quãng đường hẹp


Ngày tạo: 2023-09-14 16:59:35 sửa đổi lần cuối: 2023-09-14 16:59:35
sao chép: 0 Số nhấp chuột: 677
1
tập trung vào
1617
Người theo dõi

Nguyên tắc chiến lược

Chiến lược này kết hợp với độ hẹp (NR7) và dặm để xác định thời gian trống.

Lập luận của giao dịch là:

  1. Xác định NR7, tức là phạm vi giá cao nhất thấp nhất trong gần 7 ngày

  2. Xác định khoảng cách, tức là giá cao nhất thấp hơn ngày trước, giá thấp nhất cao hơn ngày trước

  3. Khi NR7 và Mileage xuất hiện cùng ngày và giá đóng cửa thấp hơn giá mở cửa

  4. Và đơn giản là di chuyển trung bình hướng xuống, làm cho trống

  5. Khi giá đóng cửa lại thấp hơn giá mở cửa vào ngày giao dịch tiếp theo, vị thế bằng phẳng

Chiến lược này tận dụng tối đa chiều hẹp và khoảng cách để thể hiện tình trạng thu hẹp. Kết hợp với phán đoán đường trung bình và vị trí giá thu hẹp, có thể làm tăng hiệu quả làm giảm giá.

Lợi thế chiến lược

  • Khó và xa xôi quyết định thời điểm thay đổi

  • Gói điều kiện tránh tín hiệu sai

  • Chọn nhiều không gian

Rủi ro chiến lược

  • Sự kết hợp NR7 và quãng đường là rất hiếm.

  • Cần tối ưu hóa tham số đường trung bình

  • Không thể tận dụng nhiều cơ hội chỉ bằng cách làm trống.

Tóm tắt

Chiến lược này được thực hiện bằng cách xác định và xác minh ngược hiệu quả. Tuy nhiên, tần suất giao dịch thấp, cần đánh giá hiệu quả của chiến lược.

Mã nguồn chiến lược
/*backtest
start: 2023-08-14 00:00:00
end: 2023-09-13 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("NR7ID: Narrow Range + Inside Day, Short Only Strategy (by ChartArt)", shorttitle="CA_-_NR7ID_Short_Strat", overlay=true) // max_bars_back=5000


// ChartArt's Narrow Range + Inside Day Strategy (Short Only)
//
// Version 1.1
// Idea by ChartArt on Oktober 22, 2016.
//
// This short only strategy determines when there is both
// a NR7 (narrow range 7, a trading day in which the range
// is narrower than any of the previous six days), plus a
// inside day (high of the current day is lower than the high
// of the previous day and the low of the current day is higher
// than the low of the previous day) both on the same trading day
// and enters a short trade when the close is lower than the
// open and the slope of the simple moving average is downwards, too.
//
// The strategy exits the short trade next time the close is
// lower than the open in any of the next trading days.
//
// In addition the NR7ID can be colored (if close lower open
// colored in red, else in green) and the SMA can be drawn
// with a color based on the direction of the SMA slope.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 


// NR7 Identifier
show_NR7=input(true, type=bool,title="Show Narrow Range 7 (NR7) ?")
range=(high-low)
nr7=(range < range[1]) and (range < range[2]) and (range < range[3]) and (range < range[4]) and (range < range[5]) and (range < range[6])
plotchar(show_NR7?nr7:na, char="7", location=location.abovebar, color=blue)

// Inside Day Identifier
show_insidebar = input(true, type=bool,title="Show Inside Day (I) ?")
insidebar =  (high < high[1] and low > low[1])
plotchar(show_insidebar?insidebar:na, char="i", location=location.abovebar, color=blue)

// NR7 + Inside Day Identifier
show_NR7ID_bear = input(true, type=bool,title="Show NR7ID (NR7 + Inside Day) bear color ?")
NR7ID = nr7 and insidebar
NR7ID_bear_color = NR7ID and open > close ? red : na
barcolor(show_NR7ID_bear?NR7ID_bear_color:na)
show_NR7ID_bull = input(false, type=bool,title="Show NR7ID (NR7 + Inside Day) bull color ?")
NR7ID_bull_color = NR7ID and open < close ? green : na
barcolor(show_NR7ID_bull?NR7ID_bull_color:na)

// Simple Moving Average
show_ma = input(true, type=bool,title="Show SMA ?")
ma_length = input(14,title="SMA Length")
ma = sma(close,ma_length)
ma_change = change(ma) > 0
ma_change_color = change(ma) > 0 ? green : change(ma) < 0 ? red : blue
plot(show_ma?ma:na,color=ma_change_color,linewidth=3)

// Short Strategy: NR7 + Inside Day + close is smaller than open + change of SMA is downwards
strategy.entry("sell", strategy.short, when = NR7ID and open > close and ma_change == false, comment="Short")
strategy.close("sell", when = open > close )

// (not enabled) Long Strategy: NR7 + Inside Day + close is larger than open + change of SMA is upwards
//strategy.entry("long", strategy.long, when = NR7ID and open < close and ma_change == true, comment="Long")
//strategy.close("long", when = open < close )