Chiến lược mở cửa pullback đột phá


Ngày tạo: 2024-02-22 15:41:53 sửa đổi lần cuối: 2024-02-22 15:41:53
sao chép: 0 Số nhấp chuột: 599
1
tập trung vào
1617
Người theo dõi

Chiến lược mở cửa pullback đột phá

Tổng quan

Ý tưởng chính của chiến lược này là mở nhiều vị trí sau khi xuất hiện một hình thức K-line cụ thể, tức là mở nhiều lần vào khi K-line tiếp theo mở ra khi có một sợi màu nhảy xuống và khôi phục điểm thấp của K-line tiếp theo.

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

Các điều kiện cụ thể của chiến lược này là: Điểm thấp nhất của đường K trước thấp hơn và cao nhất so với hai đường K trước đó, tức là nhảy xuống; và điểm thấp nhất của đường K hiện tại thấp hơn hoặc bằng điểm thấp nhất của đường K trước đó, tức là quay trở lại. Khi đáp ứng cả hai điều kiện này cùng lúc, hãy chơi nhiều hơn khi K tiếp theo mở.

Cài đặt dừng lỗ là điểm giảm giảm, tức là mức giá thấp nhất của đường K trước, và đặt điểm dừng là trên 2% của giá mở vị trí. Khi giá chạm vào điểm dừng hoặc giá dừng lỗ, sau đó thanh toán.

Phân tích lợi thế

Ưu điểm lớn nhất của chiến lược này là nắm bắt cơ hội phản xạ có khả năng xuất hiện trong thời gian ngắn. Khi có đường K nhảy xuống và sau đó có sự hồi phục, đây là một hình thức kỹ thuật rất mạnh mẽ, cho thấy sức mạnh của đầu không có thể bị cạn kiệt ở cấp độ này và có nhiều khả năng phản xạ sẽ xảy ra. Do đó, đây là một chiến lược tương đối phù hợp cho hoạt động đường ngắn.

Phân tích rủi ro

Rủi ro chính của chiến lược này là khả năng giá tiếp tục giảm sau khi hồi phục kết thúc. Bởi vì chúng tôi đã làm nhiều việc gần điểm thấp của hồi phục, nếu không dừng lại kịp thời, chúng tôi có thể phải đối mặt với tổn thất lớn hơn. Ngoài ra, nếu mức độ hồi phục nhỏ hơn, điểm dừng lại được thiết lập gần hơn, có thể sẽ được đặt. Do đó, chiến lược này vẫn thích hợp hơn cho hoạt động ngắn, cần theo dõi chặt chẽ các hoạt động giá, dừng lại kịp thời.

Hướng tối ưu hóa

Có thể xem xét kết hợp với các chỉ số khác để xác định thời gian nhập cảnh, chẳng hạn như có thể vào lại khi MACD xảy ra, hoặc có thể tính toán giá điển hình để xem liệu nó có ở vị trí hỗ trợ hay không, điều này có thể lọc một số tín hiệu giả và tăng sự ổn định của chiến lược. Ngoài ra, bạn có thể nghiên cứu hiệu suất của chiến lược trong các giống khác nhau và các chu kỳ thời gian khác nhau để tìm ra các tham số kết hợp tốt nhất.

Tóm tắt

Chiến lược này nói chung là một chiến lược đa phương pháp điển hình của đường ngắn đột phá. Nó nắm bắt cơ hội hồi phục được cung cấp bởi hình thức mạnh mẽ của nhảy vọt và hồi phục. Nhưng đồng thời cũng phải đối mặt với nguy cơ không thể dừng lỗ kịp thời và gây ra tổn thất lớn hơn, do đó phù hợp với hoạt động đường ngắn của thị trường được giám sát thường xuyên.

Mã nguồn chiến lược
/*backtest
start: 2024-01-22 00:00:00
end: 2024-02-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//  Created by Leon Ross
//study(title="OutsideDownOpenLower", shorttitle="ODOL", overlay=true)
strategy(title = "Outside", shorttitle = "OB", overlay = true )
  

//Window of time
//start     = timestamp(2018, 01, 01, 00, 00)  // backtest start window
//finish    = timestamp(2018, 12, 31, 23, 59)        // backtest finish window
//window()  => time >= start and time <= finish ? true : false // create function "within window of time"  

//Conditions
outsideBar = low < low[1] and high > high[1] and close < open
allConditions = outsideBar
  
//Stop and Take Profit as percentages
//inpTakeProfit   = input(2, title='Take Profit %', type=float)/100
//takeProfitValue = strategy.position_avg_price * (1 + inpTakeProfit)
//useTakeProfit   = inpTakeProfit  > 0 ?  takeProfitValue : na
//inpStopLoss     = input(1, title='Stop Loss %', type=float)/100
//stopLossValue = strategy.position_avg_price * (1 - inpStopLoss)
//useStopLoss     = inpStopLoss    > 0 ?  stopLossValue   : na
//entry = strategy.position_avg_price



//Stop as last bars low and profit as percentage
entry = strategy.position_avg_price
inpTakeProfit   = input(2.0, title='Take Profit %', type=float)/100
takeProfitValue = strategy.position_avg_price * (1 + inpTakeProfit)
useTakeProfit   = inpTakeProfit  > 0 ?  takeProfitValue : na
inpStopLoss     = valuewhen(allConditions, low, 0)
stopLossValue = inpStopLoss
useStopLoss     = inpStopLoss    > 0 ?  stopLossValue   : na
    



//Plots
bgcolor(allConditions ==1 ? aqua : na, transp=70)
plot(entry, color=blue, style=linebr, linewidth=2)
plot(useStopLoss, color=red, style=linebr, linewidth=2)
plot(useTakeProfit, color=green, style=linebr, linewidth=2)


//Entires
strategy.entry(id = "Long", long = true, when = allConditions) // use function or simple condition to decide when to get in

//Exits
//if (barssince(allConditions) == 2)
    //strategy.close("Long")
//else
strategy.exit("Exit Long", from_entry = "Long", stop = useStopLoss)