Les ressources ont été chargées... Je charge...

Stratégie de négociation de rupture de la zone de prix dynamique basée sur un système quantitatif de soutien et de résistance

Auteur:ChaoZhang est là., Date: 2024-12-11 15:03:50 Je vous en prie
Les étiquettes:

img

Résumé

Cette stratégie est un système de négociation quantitatif basé sur les ruptures de gamme de prix. Elle fonctionne en établissant dynamiquement des limites de prix supérieures et inférieures et en exécutant des transactions lorsque les prix franchissent ces niveaux clés. Le concept de base est de saisir les opportunités de tendance lorsque le marché se démarque des gammes de prix établies tout en s'adaptant aux changements du marché grâce à un ajustement dynamique des zones de prix.

Principes de stratégie

La stratégie fonctionne sur la base des mécanismes de base suivants: Premièrement, elle fixe des tailles d'étape appropriées pour différents instruments de trading, généralement autour de 1,5% du prix de l'instrument. Le système établit des zones de prix au-dessus et en dessous du prix actuel, déclenchant des signaux longs lorsque les prix dépassent la limite supérieure et des signaux courts lorsqu'ils dépassent la limite inférieure. Après chaque rupture, les zones de prix s'adaptent pour s'adapter au nouvel environnement du marché.

Les avantages de la stratégie

  1. Une forte adaptation dynamique: les zones de prix s'adaptent automatiquement aux changements du marché, ce qui permet à la stratégie de s'adapter aux différentes conditions du marché.
  2. Excellente capacité de suivi des tendances: en permettant des positions supplémentaires dans le même sens, la stratégie peut tirer pleinement parti des fortes tendances.
  3. Contrôle complet des risques: des conditions d'arrêt-perte claires sont définies, la fermeture automatique des positions lorsque les prix dépassent la zone.
  4. Applicabilité large: la stratégie peut être appliquée à divers marchés grâce à des paramètres de taille d'étape appropriés pour différents instruments de négociation.
  5. Efficacité de calcul élevée: utilise une persistance variable et des méthodes de calcul efficaces pour assurer le bon fonctionnement de la stratégie.

Risques stratégiques

  1. Risque de choc du marché: les fausses ruptures fréquentes sur les marchés à plage peuvent entraîner des arrêts consécutifs.
  2. Risque de gestion des positions: l'addition de positions dans le même sens peut entraîner une concentration excessive, ce qui nécessite un contrôle approprié de l'exposition au risque directionnel.
  3. Risque de glissement: un glissement significatif au cours de périodes volatiles peut affecter le rendement de la stratégie.
  4. Sensibilité des paramètres: l'efficacité de la stratégie dépend directement des réglages appropriés de la taille des pas, ce qui nécessite des essais approfondis.

Directions d'optimisation de la stratégie

  1. Incorporer des indicateurs de volatilité: ajuster dynamiquement la taille des étapes en fonction de la volatilité du marché afin d'améliorer l'adaptabilité de la stratégie.
  2. Ajouter des mécanismes de filtrage: inclure des indicateurs de confirmation de tendance pour réduire les pertes dues à de fausses ruptures.
  3. Améliorer la gestion des positions: concevoir des mécanismes de contrôle des positions plus détaillés pour équilibrer les rendements et les risques.
  4. Optimiser l'exécution des ordres: ajouter un routage intelligent des ordres pour réduire l'impact du glissement.
  5. Incluez la dimension temporelle: Considérez les caractéristiques temporelles du marché pour ajuster les paramètres de la stratégie au cours de différentes périodes.

Résumé

Il s'agit d'une tendance bien conçue qui suit une stratégie avec une logique claire. Grâce à des paramètres et des ajustements dynamiques de la zone de prix, combinés à une gestion flexible des positions, la stratégie peut capturer efficacement les opportunités de tendance du marché. Bien qu'il existe une marge d'optimisation, dans l'ensemble, la stratégie fournit un cadre de trading quantitatif robuste. Grâce à une optimisation et une amélioration continues, les performances de la stratégie peuvent être encore améliorées.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// @version=5
// 每个图表上画对应间隔的横线,自己手画吧
// 同方向追加20单,订单成交后重新计算,每个tick重新计算,变量保存1000个周期,k线结束后再处理一次订单,按照代码顺序来绘制plot
strategy("Price Level Breakout Strategy", overlay=true, pyramiding=200, calc_on_order_fills=true, calc_on_every_tick=true, max_bars_back=1000, process_orders_on_close=true, explicit_plot_zorder=true)
// var创建持久性变量,:=是更新变量,不重新声明
// 这个是全局变量
// a = array.new<string>(200)
// array.push(a, "a")
// plot(close, color = array.get(a, close > open ? 1 : 0))
string ticker = syminfo.ticker
var float step_size = 1000
// label.new(x=bar_index, y=close, text="当前品种代码: " + ticker)
// 根据定值画1.5的平行线
if ticker == "000300"
    step_size := 4000 * 0.015
if ticker == "XAUUSD"
    step_size := 3000 * 0.016
if ticker == "BTCUSD"
    step_size := 60000 * 0.015
if ticker == "SILVER"
    step_size := 50 * 0.015
if ticker == "UKOIL"
    step_size := 150 * 0.015
if ticker == "GBPUSD"
    step_size := 1.6 * 0.015
if ticker == "EURUSD"
    step_size := 1.1 * 0.015
    // 从0开始画200条间隔线
if ticker == "USDJPY"
    step_size := 100 * 0.015
var float start_value = close
var float up_number = close + step_size
var float low_number = close - step_size
// hline(3.14, title='Pi', color=color.blue, linestyle=hline.style_dotted, linewidth=2)
// plot(1)
// 当价格突破上限,产生买入信号
if close > up_number
    // 生成买入信号
    strategy.entry(id = "Buy", direction = strategy.long)
    // 更新新的价格区间
    start_value := start_value + step_size
    up_number := start_value + step_size
    low_number := start_value - step_size
    strategy.close(id = "Sell")
// 当价格跌破下限,产生卖出信号
if close < low_number
    // 生成卖出信号
    strategy.entry("Sell", strategy.short)
    // 更新新的价格区间
    start_value := start_value - step_size
    up_number := start_value + step_size
    low_number := start_value - step_size
    strategy.close(id = "Buy")


Plus de