Stratégie de boîte blanche du robot Price Channel


Date de création: 2024-02-28 17:51:14 Dernière modification: 2024-02-28 17:51:14
Copier: 0 Nombre de clics: 622
1
Suivre
1617
Abonnés

Stratégie de boîte blanche du robot Price Channel

Aperçu

La stratégie de la boîte blanche robotique de la chaîne de prix est une simple stratégie de négociation mécanisée basée sur l’indicateur de la chaîne de prix. Elle utilise les limites supérieures et inférieures de la chaîne de prix pour déterminer le moment d’entrée et de sortie.

Principe de stratégie

La logique de base de la stratégie de la boîte blanche des robots des canaux de prix est la suivante:

  1. Calculer le prix le plus élevé et le prix le plus bas de la racine K la plus récente en utilisant les fonctions highest et lowest, définies comme les limites supérieures et inférieures d’un canal de prix
  2. Calculer le prix moyen du canal: ((le prix le plus élevé + le prix le plus bas) /2
  3. Il est possible de faire une position plus élevée lorsque le prix a franchi la limite supérieure du canal.
  4. La position est ouverte lorsque le prix atteint la limite inférieure du canal
  5. La position est à zéro lorsque le prix revient au milieu de la chaîne de prix

La stratégie a également quelques paramètres configurables:

  • Longueur de la chaîne de prix: 50 lignes K par défaut
  • Type d’ouverture de portefeuille: multi-tête, tête vide peut être configuré séparément
  • Nombre de positions ouvertes: 100% du capital du compte par défaut
  • Stop loss: vous pouvez choisir d’utiliser le cours moyen de la chaîne de prix comme stop loss
  • Heures de transaction: configurable pour une transaction uniquement dans la plage de dates spécifiée

En ajustant ces paramètres, les stratégies peuvent être mieux adaptées aux différentes variétés et aux différents environnements du marché.

Analyse des avantages

La stratégie de la boîte blanche des robots de la chaîne de prix présente les avantages suivants:

  1. La logique de la stratégie est simple, facile à comprendre et à mettre en œuvre
  2. Utiliser pleinement les indicateurs de la chaîne de prix pour évaluer les tendances et les retournements
  3. Plus de paramètres à configurer et plus d’adaptabilité
  4. Un système de stop-loss intégré pour limiter les pertes
  5. Aide au filtrage temporel pour éviter les effets d’événements majeurs

Dans l’ensemble, la stratégie est une stratégie de suivi de tendance simple et pratique, qui, après ajustement des paramètres, donne de bons résultats.

Analyse des risques

La stratégie de la boîte blanche des robots des canaux de prix comporte également des risques:

  1. L’indicateur de canal de prix est sensible au paramètre len, nécessitant des tests et des optimisations indépendants pour différentes périodes et variétés
  2. Le suivi des stop-loss est soumis à un risque d’effet de levier et nécessite un ajustement de la distance de stop-loss en fonction des fluctuations du marché.
  3. En cas d’opérations de gré à gré et de choc, il y a plus de transactions inutiles, ce qui augmente les coûts de transaction et les pertes de points de glissement.

Afin de réduire ces risques, il est nécessaire d’optimiser dans les domaines suivants:

  1. Optimiser automatiquement les paramètres à l’aide de la méthode Walk Forward Analysis
  2. La probabilité d’une admission dans une zone de couverture au prix d’arrêt pour éviter d’être arbitragé
  3. Augmenter les indicateurs de jugement de tendance pour éviter les transactions sur les marchés à basse volatilité

Direction d’optimisation

La stratégie de la boîte blanche des robots des canaux de prix a encore de la place pour être optimisée:

  1. Augmenter le jugement sur les grandes tendances cycliques et éviter les transactions à contre-courant
  2. La combinaison des différences de prix entre les différentes variétés pour définir les paramètres et exploiter les opportunités de arbitrage
  3. Ajout d’une zone de couverture aléatoire au prix d’arrêt pour réduire la probabilité d’être arbitragé
  4. Paramètres de la chaîne de prix ajustés en fonction de la dynamique des fluctuations du marché
  5. Stratégies d’optimisation d’agents de formation pour des variétés spécifiques à l’aide de méthodes d’apprentissage en profondeur

Grâce à ces outils d’optimisation, la stabilité et la rentabilité de la stratégie devraient être encore améliorées.

Résumer

La stratégie de la boîte blanche du robot de la chaîne de prix est une stratégie de suivi de tendance simple mais pratique. Elle détermine la direction de la tendance et le point de basculement à partir de l’indicateur de la chaîne de prix et prend des décisions commerciales.

Code source de la stratégie
/*backtest
start: 2023-02-21 00:00:00
end: 2024-02-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro

//@version=4
strategy(title = "Robot WhiteBox Channel", shorttitle = "Robot WhiteBox Channel", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_value = 0.1)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
needstop = input(true, defval = true, title = "Stop-loss")
lotsize = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
len = input(50, minval = 1, title = "Price Channel Length")
showll = input(true, defval = true, title = "Show lines")
showbg = input(false, defval = false, title = "Show Background")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//Price Channel
h = highest(high, len)
l = lowest(low, len)
center = (h + l) / 2

//Lines
pccol = showll ? color.black : na
slcol = showll ? color.red : na
plot(h, offset = 1, color = pccol)
plot(center, offset = 1, color = slcol)
plot(l, offset = 1, color = pccol)

//Background
size = strategy.position_size
bgcol = showbg == false ? na : size > 0 ? color.lime : size < 0 ? color.red : na
bgcolor(bgcol, transp = 70)

//Trading
truetime = time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)
lot = 0.0
lot := size != size[1] ? strategy.equity / close * lotsize / 100 : lot[1]
if h > 0
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, stop = h, when = strategy.position_size <= 0 and truetime)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, stop = l, when = strategy.position_size >= 0 and truetime)
    strategy.entry("S Stop", strategy.long, 0, stop = center, when = strategy.position_size[1] <= 0 and needstop)
    strategy.entry("L Stop", strategy.short, 0, stop = center, when = strategy.position_size[1] >= 0 and needstop)
if time > timestamp(toyear, tomonth, today, 23, 59)
    strategy.close_all()
    strategy.cancel("Long")
    strategy.cancel("Short")