Noro
Chiến lược này đầu tiên tính toán kênh giá cao nhất (lần cao nhất) và kênh giá thấp nhất (lần thấp nhất) của giá, sau đó tính toán đường giữa của kênh giá (trung tâm). Tiếp theo, nó tính toán khoảng cách (dist) giữa giá và đường giữa cũng như trung bình động đơn giản của khoảng cách (distsma). Dựa trên điều này, các dải biến động 1 lần (hd và ld) và 2 lần (hd2 và ld2) khoảng cách từ đường giữa có thể được tính toán.
Khi giá vượt qua dải biến động bằng khoảng cách 1 lần so với đường giữa, nó được đánh giá là tăng giá. Khi giá vượt qua dải biến động dưới đường giữa, nó được đánh giá là giảm giá. Chiến lược mở các vị trí ngược lại khi có dấu hiệu kiệt sức trong xu hướng. Ví dụ, trong xu hướng tăng, nếu có hai đường yang, các vị trí ngắn sẽ được mở vào ngày đóng đường yang thứ hai; trong xu hướng giảm, nếu có hai đường yin, các vị trí dài sẽ được mở vào ngày đóng đường yin thứ hai.
Nói chung, Noro
/*backtest start: 2023-11-10 00:00:00 end: 2023-12-10 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Noro's Bands Scalper Strategy v1.0", shorttitle = "Scalper str 1.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") len = input(20, defval = 20, minval = 2, maxval = 200, title = "Period") needbb = input(true, defval = true, title = "Show Bands") needbg = input(true, defval = true, title = "Show Background") src = close //PriceChannel lasthigh = highest(src, len) lastlow = lowest(src, len) center = (lasthigh + lastlow) / 2 //Distance dist = abs(src - center) distsma = sma(dist, len) hd = center + distsma ld = center - distsma hd2 = center + distsma * 2 ld2 = center - distsma * 2 //Trend trend = close < ld and high < hd ? -1 : close > hd and low > ld ? 1 : trend[1] //Lines colo = needbb == false ? na : black plot(hd, color = colo, linewidth = 1, transp = 0, title = "High band") plot(center, color = colo, linewidth = 1, transp = 0, title = "center") plot(ld, color = colo, linewidth = 1, transp = 0, title = "Low band") //Background col = needbg == false ? na : trend == 1 ? lime : red bgcolor(col, transp = 80) //Signals bar = close > open ? 1 : close < open ? -1 : 0 up7 = trend == 1 and bar == -1 and bar[1] == -1 ? 1 : 0 dn7 = trend == 1 and bar == 1 and bar[1] == 1 and close > strategy.position_avg_price ? 1 : 0 up8 = trend == -1 and bar == -1 and bar[1] == -1 and close < strategy.position_avg_price ? 1 : 0 dn8 = trend == -1 and bar == 1 and bar[1] == 1 ? 1 : 0 if up7 == 1 or up8 == 1 strategy.entry("Long", strategy.long, needlong == false ? 0 : trend == -1 ? 0 : na) if dn7 == 1 or dn8 == 1 strategy.entry("Short", strategy.short, needshort == false ? 0 : trend == 1 ? 0 : na)