
Tóm tắt: Chiến lược này sử dụng dữ liệu về vị trí tương lai BTC của Bitfinex để hướng dẫn giao dịch. Hạn chế khi số lượng vị trí ngắn tăng lên, làm nhiều hơn khi số lượng vị trí ngắn giảm.
Nguyên tắc chiến lược:
Phân tích lợi thế:
Phân tích rủi ro:
Định hướng tối ưu hóa:
Tóm lại: Chiến lược này thực hiện tín hiệu giao dịch của cơ quan thông báo kịp thời bằng cách theo dõi các nhà giao dịch chuyên nghiệp về tương lai BTC của Bitfinex. Nó giúp nhà đầu tư giám sát nhiệt độ thị trường, nắm bắt các điểm cao và thấp. Đồng thời cảnh báo rủi ro đầu tư, hãy cẩn thận giảm vị trí nhiều đầu khi các nhà giao dịch chuyên nghiệp trống nhiều.
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bitfinex Shorts Strat",
overlay=true,
default_qty_type=strategy.percent_of_equity,
default_qty_value=10, precision=2, initial_capital=1000,
pyramiding=2,
commission_value=0.05)
//Backtest date range
StartDate = input(timestamp("01 Jan 2021"), title="Start Date")
EndDate = input(timestamp("01 Jan 2024"), title="Start Date")
inDateRange = true
symbolInput = input(title="Bitfinex Short Symbol", defval="BTC_USDT:swap")
Shorts = request.security(symbolInput, "", open)
// RSI Input Settings
length = input(title="Length", defval=7, group="RSI Settings" )
overSold = input(title="High Shorts Threshold", defval=75, group="RSI Settings" )
overBought = input(title="Low Shorts Threshold", defval=30, group="RSI Settings" )
// Calculating RSI
vrsi = ta.rsi(Shorts, length)
RSIunder = ta.crossover(vrsi, overSold)
RSIover = ta.crossunder(vrsi, overBought)
// Stop Loss Input Settings
longLossPerc = input.float(title="Long Stop Loss (%)", defval=25, group="Stop Loss Settings") * 0.01
shortLossPerc = input.float(title="Short Stop Loss (%)", defval=25, group="Stop Loss Settings") * 0.01
// Calculating Stop Loss
longStopPrice = strategy.position_avg_price * (1 - longLossPerc)
shortStopPrice = strategy.position_avg_price * (1 + shortLossPerc)
// Strategy Entry
if (not na(vrsi))
if (inDateRange and RSIover)
strategy.entry("LONG", strategy.long, comment="LONG")
if (inDateRange and RSIunder)
strategy.entry("SHORT", strategy.short, comment="SHORT")
// Submit exit orders based on calculated stop loss price
if (strategy.position_size > 0)
strategy.exit(id="LONG STOP", stop=longStopPrice)
if (strategy.position_size < 0)
strategy.exit(id="SHORT STOP", stop=shortStopPrice)