Cette stratégie utilise une méthode de jugement basée sur un modèle de ligne K pour mettre en œuvre l'arbitrage de fabrication de marché à haute fréquence. Son idée principale est d'ouvrir et de fermer des transactions pour la fabrication de marché à haute fréquence en jugant des modèles haussiers / baissiers sur différents délais de ligne K. Plus précisément, la stratégie surveille simultanément plusieurs délais de ligne K et prend des positions longues ou courtes correspondantes lorsqu'elle observe des lignes K ascendantes ou descendantes consécutives.
La logique de base de cette stratégie réside dans le jugement des tendances haussières / baissières à travers différentes lignes K. Plus précisément, elle suit simultanément les lignes K de 1 minute, 5 minutes et 15 minutes. La stratégie détermine le sentiment actuel en vérifiant si les prix ont augmenté ou baissé par rapport à N lignes K précédentes. Si les prix augmentent consécutivement, cela indique un sentiment haussier; si les prix baissent consécutivement, cela indique une vision baissière. Sur les signaux haussiers, la stratégie va long; sur les signaux baissiers, la stratégie va court. De cette façon, la stratégie pourrait capturer les opportunités de tendance et de renversement moyen à travers différentes périodes pour l'arbitrage à haute fréquence.
La logique de base est mise en œuvre en suivant deux indicateursups
etdns
, qui enregistrent le nombre de lignes K ascendantes et descendantes consécutives.consecutiveBarsUp
etconsecutiveBarsDown
Les taux de change sont les plus élevés dans les pays où la tendance est la plus élevée.ups
est supérieur ou égal àconsecutiveBarsUp
, il indique une tendance haussière; lorsquedns
dépasseconsecutiveBarsDown
En outre, la stratégie spécifie une plage de temps de test arrière et des messages d'exécution d'ordres, etc.
Les avantages de cette stratégie sont les suivants:
Il y a aussi plusieurs risques à prendre en compte:
Les moyens possibles d'atténuer les risques sont les suivants:
Cette stratégie peut être améliorée à partir des dimensions suivantes:
Cette stratégie réalise une stratégie d'arbitrage à haute fréquence simple mais efficace basée sur le jugement du modèle de ligne K. Son noyau réside dans la capture des tendances haussières / baissières intradiennes à travers les délais d'arbitrage. Malgré certains risques inhérents, cette stratégie facile à comprendre sert de bon point de départ pour le trading algorithmique. D'autres améliorations autour de l'optimisation et de la gestion des risques généreront probablement des résultats plus stables et rentables.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-21 23:59:59 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 // Strategy strategy("Up/Down Strategy", initial_capital = 10000, default_qty_value = 10000, default_qty_type = strategy.cash) consecutiveBarsUp = input(1) consecutiveBarsDown = input(1) price = close ups = 0.0 ups := price > price[1] ? nz(ups[1]) + 1 : 0 dns = 0.0 dns := price < price[1] ? nz(dns[1]) + 1 : 0 // Strategy Backesting startDate = input(timestamp("2021-01-01T00:00:00"), type = input.time) finishDate = input(timestamp("2021-12-31T00:00:00"), type = input.time) time_cond = true // Messages for buy and sell message_buy = input("{{strategy.order.alert_message}}", title="Buy message") message_sell = input("{{strategy.order.alert_message}}", title="Sell message") // Strategy Execution if (ups >= consecutiveBarsUp) and time_cond strategy.entry("Long", strategy.long, stop = high + syminfo.mintick, alert_message = message_buy) if (dns >= consecutiveBarsDown) and time_cond strategy.entry("Short", strategy.short, stop = low + syminfo.mintick, alert_message = message_sell) //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)