
Chiến lược rút ngắn đường quay trở lại thị trường bò là một chiến lược theo dõi xu hướng. Nó mua lại trong thị trường bò, đặt mức dừng lớn hơn để có lợi nhuận. Chiến lược này chủ yếu áp dụng cho thị trường bò, có thể có được lợi nhuận vượt mức.
Chiến lược này bắt đầu bằng cách tính toán mức độ thay đổi của giá đóng cửa trong một chu kỳ nhất định gần đây nhất, khi giá cổ phiếu giảm vượt quá mức độ hồi phục được đặt, tức là phát ra tín hiệu mua. Đồng thời, yêu cầu đường trung bình di chuyển cao hơn giá đóng cửa, đây là điều kiện xác nhận xu hướng tăng.
Sau khi tham gia, đặt giá dừng lỗ và dừng chân. Cấp độ dừng lỗ lớn hơn, đáp ứng yêu cầu về nguồn lực; Cấp độ dừng chân nhỏ hơn, có lợi nhuận nhanh chóng. Khi dừng lỗ hoặc dừng chân được kích hoạt, thoát khỏi vị trí.
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:
Phản ứng: Kiểm soát nghiêm ngặt quy mô vị trí, điều chỉnh mức dừng lỗ, giảm tỷ lệ rút ra của các lệnh dừng, giảm rủi ro.
Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:
Chiến lược ngắn hạn của thị trường bò để đổi lấy lợi nhuận vượt trội bằng việc dừng lỗ cao hơn. Nó sử dụng sự kết hợp của phán đoán xu hướng và mua lại để có thể nắm bắt hiệu quả cơ hội của thị trường bò. Bằng cách điều chỉnh tham số và kiểm soát rủi ro, có thể có được lợi nhuận ổn định tốt hơn.
/*backtest
start: 2023-12-30 00:00:00
end: 2024-01-29 00:00:00
period: 1h
basePeriod: 15m
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/
// © Coinrule
//@version=3
strategy(shorttitle='Scalping Dips On Trend',title='Scalping Dips On Trend (by Coinrule)', overlay=true, initial_capital = 1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)
//Backtest dates
fromMonth = input(defval = 1, title = "From Month")
fromDay = input(defval = 10, title = "From Day")
fromYear = input(defval = 2020, title = "From Year")
thruMonth = input(defval = 1, title = "Thru Month")
thruDay = input(defval = 1, title = "Thru Day")
thruYear = input(defval = 2112, title = "Thru Year")
showDate = input(defval = true, title = "Show Date Range")
start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window
finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window
window() => true
inp_lkb = input(1, title='Lookback Period')
perc_change(lkb) =>
overall_change = ((close[0] - close[lkb]) / close[lkb]) * 100
// Call the function
overall = perc_change(inp_lkb)
//MA inputs and calculations
MA=input(50, title='Moving Average')
MAsignal = sma(close, MA)
//Entry
dip= -(input(2))
strategy.entry(id="long", long = true, when = overall< dip and MAsignal > close and window())
//Exit
Stop_loss= ((input (10))/100)
Take_profit= ((input (3))/100)
longStopPrice = strategy.position_avg_price * (1 - Stop_loss)
longTakeProfit = strategy.position_avg_price * (1 + Take_profit)
strategy.close("long", when = close < longStopPrice or close > longTakeProfit and window())