Lag-Arbitrage-Strategie


Erstellungsdatum: 2025-09-04 10:15:01 zuletzt geändert: 2025-09-10 11:51:36
Kopie: 0 Klicks: 102
2
konzentrieren Sie sich auf
319
Anhänger

Lag-Arbitrage-Strategie Lag-Arbitrage-Strategie

Die zweite Strategie ist die “Twin Price Arbitrage Strategy”.

PAIR TRADING, ARBITRAGE, CORRELATION

Was ist das für eine Zauberkunst? Zwei Münzen können so spielen!

Wissen Sie? Es gibt einen Handel, der so interessant ist wie das Beobachten von Verhaltensunterschieden zwischen Zwillingen. Diese Strategie konzentriert sich speziell auf zwei stark miteinander verbundene Handelspaare (z.B. TRUMP und MELANIA), und wenn ihre Preisänderungen “unregelmäßig” sind, ist das unsere Chance, Geld zu verdienen!

Das ist nicht ein Abstieg, sondern eine Rückkehr, nachdem man das “Ungleichgewicht der Beziehung” erfasst hat. Es ist wie Zwillinge, die im selben Tempo laufen, und plötzlich geht einer schneller, der andere kommt mit Sicherheit.

Zentrale Logik der Strategie von Liu: “Ungleichgewichte” zu finden, bedeutet Chancen zu finden

Die Essenz dieser Strategie besteht darin, die Differenz zwischen den beiden Währungen zu berechnen. Wenn die Differenz über dem eingestellten Schwellenwert (der Standardwert ist 2%) liegt:

  • Zu große Differenz → Mehr relativ zurückgebliebene Währungen
  • Zu geringe Differenz → Relativ führende Währungen

Es ist eine Strategie, die nicht auf völlig unabhängige Währungen angewendet werden kann, so wie man nicht erwarten kann, dass der Preis von Äpfeln und Orangen die gleiche Entwicklung hat!

️ Parameter-Einstellungen: Einfach, grob und auf den ersten Blick verständlich

Triggerbedingungen für Transaktionen

  • Preisunterschiede: 2% (veränderbar)
  • Anzahl der Transaktionen: 100 (korrigiert nach Kapital)

Risikokontrolle

  • 5% der Erstarrung
  • Stop Loss: 3 Prozent

Diese Einstellung ist wie ein “Safe-Air-Pocket” für Ihren Handel, der sowohl Chancen erfasst, als auch Verluste verhindert!

Wenn Sie sich für einen bestimmten Fall entscheiden, können Sie sich für einen anderen entscheiden, der sich für einen anderen entscheiden kann.

Die beste Zeit für die Nutzung

  1. Die beiden Währungen sind historisch verwandt.
  2. Marktfluktuation moderat (nicht in Extremsituationen)
  3. Es gibt genügend Liquiditätshilfen

Freundliche TippsDie Strategie eignet sich am besten für städtische Unruhen, wie das Angeln auf einem ruhigen See, aber wenn es zu stark ist, ist es besser, sich vor dem Wind zu schützen!

Denken Sie daran, dass Handel kein Glücksspiel ist, sondern das Richtige zu tun, wenn es das Richtige ist. Diese Strategie lehrt uns, dass es manchmal wichtiger ist, die “Beziehungen” zu beobachten, als die “Richtung” vorherzusagen!

Strategiequellcode
/*backtest
start: 2025-01-20 17:00:00
end: 2025-01-22 07:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"MELANIA_USDT","balance":500000,"tradesMode":"1"}]
*/

//@version=5
strategy("配对交易策略", overlay=true)

// 输入参数
pair_a = input("TRUMP_USDT.swap", title="交易对A", group="交易设置")
pair_b = input("MELANIA_USDT.swap", title="交易对B", group="交易设置")
trade_number = input.float(100, title="交易数量", minval=0.01, group="交易设置")
diff_level = input.float(0.02, title="差价阈值", minval=0.001, step=0.001, group="交易设置")
stop_profit_level = input.float(0.05, title="止盈比例", minval=0.001, step=0.001, group="风险管理")
stop_loss_level = input.float(0.03, title="止损比例", minval=0.001, step=0.001, group="风险管理")

// 获取两个交易对的数据
price_a = request.security(pair_a, timeframe.period, close)
open_a = request.security(pair_a, timeframe.period, open)
price_b = close
open_b = open

// 计算价格变化比例差异
change_a = (price_a - open_a) / open_a
change_b = (price_b - open_b) / open_b
ratio = change_a - change_b

// 策略状态变量
var float entry_price = na
var bool in_position = false
var int position_direction = 0  // 1为多头,-1为空头
var float take_profit_price = na
var float stop_loss_price = na

// 交易逻辑
long_condition = not in_position and ratio > diff_level
short_condition = not in_position and ratio < -diff_level

// 开仓逻辑
if long_condition
    strategy.entry("Long", strategy.long, qty=trade_number)
    entry_price := price_b
    in_position := true
    position_direction := 1
    take_profit_price := entry_price * (1 + stop_profit_level)
    stop_loss_price := entry_price * (1 - stop_loss_level)
    
if short_condition
    strategy.entry("Short", strategy.short, qty=trade_number)
    entry_price := price_b
    in_position := true
    position_direction := -1
    take_profit_price := entry_price * (1 - stop_profit_level)
    stop_loss_price := entry_price * (1 + stop_loss_level)

// 平仓逻辑
if in_position and position_direction == 1
    // 多头止盈止损
    if price_b >= take_profit_price or price_b <= stop_loss_price
        strategy.close("Long")
        in_position := false
        position_direction := 0
        entry_price := na
        take_profit_price := na
        stop_loss_price := na
        
if in_position and position_direction == -1
    // 空头止盈止损
    if price_b <= take_profit_price or price_b >= stop_loss_price
        strategy.close("Short")
        in_position := false
        position_direction := 0
        entry_price := na
        take_profit_price := na
        stop_loss_price := na

// 图表显示
plot(ratio, title="比例差异", color=color.blue, linewidth=2, overlay = false)
hline(diff_level, title="上阈值", color=color.red, linestyle=hline.style_dashed, overlay = false)
hline(-diff_level, title="下阈值", color=color.blue, linestyle=hline.style_dashed, overlay = false)
hline(0, title="零线", color=color.gray, linestyle=hline.style_dotted, overlay = false)

// 标记开仓点
plotshape(long_condition, title="买入信号", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green)
plotshape(short_condition, title="卖出信号", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)

// 警报条件
alertcondition(long_condition, title="买入信号", message="配对交易策略:买入信号触发")
alertcondition(short_condition, title="卖出信号", message="配对交易策略:卖出信号触发")