Stratégie d'arbitrage inter-marchés basée sur la moyenne mobile régularisée adaptative


Date de création: 2023-11-16 16:20:11 Dernière modification: 2023-11-16 16:20:11
Copier: 0 Nombre de clics: 642
1
Suivre
1617
Abonnés

Stratégie d’arbitrage inter-marchés basée sur la moyenne mobile régularisée adaptative

Aperçu

Cette stratégie permet d’effectuer des transactions arbitraires entre différents marchés en calculant des moyennes mobiles de régulation adaptative. La stratégie présente des caractéristiques telles que l’arbitrage entre les marchés, l’ajustement des paramètres dynamiques et la maîtrise des risques.

Principe de stratégie

La stratégie définit d’abord une fonction scaleMinimax, utilisée pour normaliser la séquence temporelle à une plage spécifiée. Ensuite, elle définit une fonction rema de moyenne mobile régularisée adaptative, qui calcule la ligne de signal après lissage sig. La ligne de signal est calculée de la manière suivante:

  1. Définir une fenêtre de défilement de 5 jours par défaut.
  2. La valeur signée quotidienne est la moyenne pondérée de la valeur signée du jour précédent par rapport au prix de clôture du jour. La moyenne pondérée utilise un mécanisme de pondération adaptatif, plus la valeur est proche de la valeur actuelle, plus le poids est élevé.
  3. L’ajout d’un paramètre λ en tant que règle permet de simplifier la transformation de sig.

Après avoir obtenu le signal, la stratégie décide de l’espace libre en jugant le signal par rapport au prix. En particulier:

  1. Quand la sig est sur le prix, faites plus.
  2. Le prix est indiqué sur la page de vente de l’article.

En outre, la stratégie a ajouté le facteur de lissage smooth et la ligne de signal show_line comme paramètres réglables, ce qui améliore la flexibilité de la stratégie.

Analyse des avantages

La stratégie présente les avantages suivants par rapport à la stratégie traditionnelle de la moyenne mobile:

  1. L’adoption d’un mécanisme d’ajustement de la pondération permettra de répondre plus rapidement aux variations des prix.
  2. L’ajout d’éléments de régularisation a permis d’améliorer la fluidité des lignes de signaux et d’éviter les signaux erronés causés par les fortes fluctuations des prix.
  3. L’arbitrage intermarché permet de tirer profit des différences de prix entre les différents marchés.
  4. La conception des paramètres est flexible et peut être optimisée en fonction des conditions du marché.

Risques et solutions

Cette stratégie comporte aussi des risques:

  1. La solution est d’ajuster correctement les paramètres de lissage et d’éviter les vibrations de la ligne de signal.

  2. L’arbitrage intermarché doit s’assurer que les deux marchés sont liés par les prix et que les tendances sont cohérentes. La solution consiste à choisir un marché hautement pertinent pour l’arbitrage.

  3. L’optimisation des paramètres nécessite l’accumulation de suffisamment de données historiques pour effectuer des retours. La solution consiste à ajuster les paramètres avec soin dans les transactions réelles.

Direction d’optimisation

La stratégie peut également être optimisée dans les domaines suivants:

  1. Pour la sélection des paramètres, il est possible d’introduire des algorithmes d’apprentissage automatique pour optimiser les combinaisons de paramètres.

  2. Dans la génération de signaux, il est possible d’introduire plus d’indicateurs pour les combiner et construire un signal de transaction plus stable.

  3. Sur le contrôle des risques, un stop loss peut être défini pour contrôler les pertes individuelles.

  4. L’arbitrage intermarché peut être étendu à d’autres types de transactions plus pertinents.

Résumer

Cette stratégie permet d’effectuer des transactions arbitraires entre les marchés en calculant automatiquement des moyennes mobiles. Par rapport aux stratégies traditionnelles de moyennes mobiles, elle présente des avantages tels que l’auto-adaptation des paramètres, le traitement en douceur et l’arbitrage entre les marchés. La prochaine étape consiste à optimiser davantage la stratégie grâce à l’apprentissage automatique, aux signaux combinés et à la gestion des risques.

Code source de la stratégie
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Crossover82%", overlay=true)

//
// Functions
//
scaleMinimax(X, p, min, max) => 
    hi = highest(X, p), lo = lowest(X, p)
    (max - min) * (X - lo)/(hi - lo) + min

rema(ts, p) => // regularized ma
    rm = 0.0, lambda = .5, a = 2 / (p + 1)
    rm := (nz(rm[1]) + a * (ts - nz(rm[1])) + lambda * (2 * nz(rm[1]) - nz(rm[2]))) / (lambda + 1)
    rm
    
//
// Inputs
//
X = input(close, title="Data source")
smooth = input(2, title="REMA smooth factor")
show_line = input(true, title="Show signal line")

//
// Main
//
p = 5
sig = rema(scaleMinimax(pow(X*p,-X) - 0.1, 100, lowest(X, 100), highest(X, 100)), smooth)

plot(show_line ? sig : na, linewidth=1)
plot(cross(sig, X) ? ohlc4 : na, style=circles, linewidth=8, color=blue, transp=50)

longCondition = crossover(sig, X)
if (longCondition)
    strategy.entry("LE", strategy.long)

shortCondition = crossunder(sig, X)
if (shortCondition)
    strategy.entry("SE", strategy.short)