Stratégie quantique de dimensionnement dynamique de la position

Auteur:ChaoZhang est là., Date: le 21 février 2024 à 14:52:10
Les étiquettes:

img

Résumé

L'idée de base de cette stratégie est d'ajuster dynamiquement la taille de la position de chaque transaction en fonction de l'équité du compte.

La logique de la stratégie

La stratégie vise à réaliser une dimensionnement dynamique des positions à travers les étapes clés suivantes:

  1. Définir des paramètres tels que le ratio d'effet de levier, la taille maximale de la position comme contraintes
  2. Calculer la taille de la position de référence en divisant le fonds propres du compte par le ratio d'effet de levier
  3. Comparer la taille de référence avec la taille maximale, en prenant la plus petite comme taille réelle
  4. Ajuster la taille de la position à la taille réelle calculée lors de l'ouverture de positions
  5. La taille de la position changera en temps réel en fonction des variations du PnL et des fluctuations du capital du compte

Les étapes ci-dessus assurent une dimensionnement raisonnable des positions, évitent les risques de surendettement, tout en reliant la taille aux capitaux propres pour parvenir à une compensation automatique à mesure que les bénéfices augmentent.

Les avantages

La stratégie présente les avantages suivants:

  1. Réalise le dimensionnement dynamique de la position sans intervention manuelle
  2. Lier la taille de la position au capital propre pour obtenir automatiquement un effet de composition
  3. Définit l'effet de levier et la taille maximale comme limites de risque
  4. Logie simple et claire, facile à comprendre et à personnaliser
  5. Facile à intégrer dans d'autres stratégies, très extensible

Les risques

Il y a aussi des risques:

  1. Perte accrue en cas d'augmentation de la taille de la position, risque de défaillance des renversements
  2. Ajustements fréquents dans des conditions de marché extrêmes dus au lien en temps réel avec les capitaux propres
  3. Un ajustement inapproprié de la taille maximale peut entraîner un effet de levier excessif
  4. Le risque d'effet de levier excessif

Les risques peuvent être atténués par des paramètres prudents, une réserve de fonds propres, etc.

Des possibilités d'amélioration

La stratégie peut être améliorée de la manière suivante:

  1. Ajouter des glissades aux réglages en douceur
  2. Optimiser la formule de dimensionnement de la position en incorporant d'autres facteurs
  3. Tailles de verrouillage statique dans des conditions de marché spécifiques
  4. Définir la taille minimale des étapes pour les réglages afin d'éviter des changements excessifs
  5. Ajout de règles conditionnelles pour éviter les ajustements inutiles

Les améliorations ci-dessus peuvent rendre le comportement de la stratégie plus stable et contrôlable, évitant la sensibilité et les changements fréquents de taille de position.

Conclusion

La stratégie réalise un dimensionnement dynamique des positions basé sur les actions pour augmenter automatiquement les bénéfices. Elle définit le levier et la taille maximale comme contrôles des risques, avec une logique simple et claire pour une facilité de compréhension et de personnalisation.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of Tendies Heist LLC, 2021
//@version=4
strategy("Tendies Heist Auto Compounding Example", overlay=true)

    
leverage = input(10000)

maxps = input(25, "max position size")
strategy.risk.max_position_size(maxps)

balance = max(1,floor(strategy.equity / leverage))

o        = 1
ps       = true
size     = 0.
balance2 = size[1] < balance
balance3 = size[1] > balance
l        = balance3
w        = balance2

if ps
    size := w ? size[1]+o : l ? size[1]-o : nz(size[1],o)
if size > maxps
    size := maxps

longCondition = crossover(sma(close, 14), sma(close, 28))
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long,qty=size)

shortCondition = crossunder(sma(close, 14), sma(close, 28))
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short,qty=size)

Plus de