Stratégie de trading combinée à volume multiple et momentum

OBV RSI MFI CMF VWAP VRSI
Date de création: 2024-11-12 10:52:54 Dernière modification: 2024-11-12 10:52:54
Copier: 0 Nombre de clics: 120
1
Suivre
1166
Abonnés

Stratégie de trading combinée à volume multiple et momentum

Aperçu

Il s’agit d’une stratégie de négociation intégrée basée sur 7 indicateurs de transaction différents. La stratégie construit un système de négociation complet en intégrant plusieurs indicateurs de transaction tels que OBV, lignes A/D, CMF, MFI, VWAP, oscillateur de transaction et RSI de transaction. Le cœur de la stratégie est d’améliorer la précision des transactions en confirmant les signaux de plusieurs indicateurs, les transactions ne sont exécutées que lorsque plus de 4 indicateurs donnent simultanément des signaux d’achat ou de vente.

Principe de stratégie

La stratégie utilise des méthodes de vérification multi-indicateurs, notamment:

  1. L’OBV est utilisé pour suivre les variations cumulatives de la circulation.
  2. Ligne A/D (indicateur de dispersion) reflétant la relation entre le prix et le volume de transaction
  3. Le CMF (flux de monnaie en or) mesure le flux de fonds vers
  4. MFI (indicateur de flux de trésorerie) mesure la pression de vente et d’achat
  5. VWAP comme résistance de support dynamique
  6. L’oscillateur de transaction montre la tendance des transactions
  7. Le VRSI (volume de transactions relativement faible) reflète l’intensité du volume de transactions

Lorsque plus de 4 indicateurs donnent le même signal, la stratégie considère qu’il y a une forte opportunité de tendance sur le marché, ce qui conduit à la négociation.

Avantages stratégiques

  1. Vérification croisée multi-indicateurs pour réduire le risque de faux signaux
  2. Une méthode d’analyse combinant quantité et prix
  3. Une double fonctionnalité de suivi de dynamique et de tendance
  4. Les conditions d’entrée et de sortie sont clairement définies
  5. Une forte adaptabilité et extensibilité

Risque stratégique

  1. Plusieurs indicateurs peuvent provoquer un retard de signal
  2. Une survente des transactions dans un marché en crise
  3. L’optimisation des paramètres peut conduire à un surapprentissage
  4. Besoin de ressources de calcul plus importantes
  5. Une mauvaise performance dans un marché à faible liquidité

Orientation de l’optimisation de la stratégie

  1. Présentation du mécanisme de paramètres adaptatifs
  2. Augmentation du filtre de volatilité du marché
  3. Optimisation de la répartition des poids des indicateurs
  4. Ajoutez des objectifs de stop-loss et de profit
  5. Pensez à introduire un filtre temporel

Résumer

Il s’agit d’une stratégie de négociation intégrée basée sur plusieurs indicateurs de volume de transaction, qui améliore la précision des transactions grâce à une analyse multidimensionnelle du marché. La stratégie a une base théorique et une valeur pratique solides, mais nécessite une optimisation des paramètres et une gestion des risques appropriés en fonction de la situation du marché dans les applications pratiques.

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

//@version=5
strategy("Combined Volume Indicators Strategy", overlay=true)

// تنظیمات
lengthRSI = 14
lengthMFI = 14
lengthCMF = 20
fastLength = 5
slowLength = 10

// محاسبه OBV
obv = ta.cum(close > close[1] ? volume : close < close[1] ? -volume : 0)

// محاسبه A/D به‌صورت دستی
var float ad = na
ad := na(ad[1]) ? 0 : ad[1] + ((close - low) - (high - close)) / (high - low) * volume

// محاسبه CMF (Chaikin Money Flow)
moneyFlowMultiplier = ((close - low) - (high - close)) / (high - low)
moneyFlowVolume = moneyFlowMultiplier * volume
cmf = ta.sma(moneyFlowVolume, lengthCMF) / ta.sma(volume, lengthCMF)

// محاسبه MFI به‌صورت دستی
typicalPrice = (high + low + close) / 3
moneyFlow = typicalPrice * volume

// محاسبه جریان پول مثبت و منفی
positiveFlow = 0.0
negativeFlow = 0.0

for i = 0 to lengthMFI - 1
    positiveFlow := positiveFlow + (close[i] > close[i + 1] ? moneyFlow[i] : 0)
    negativeFlow := negativeFlow + (close[i] < close[i + 1] ? moneyFlow[i] : 0)

mfi = 100 - (100 / (1 + (positiveFlow / negativeFlow)))

// محاسبه VWAP
vwap = ta.vwap(close)

// محاسبه Volume Oscillator
fastVolMA = ta.sma(volume, fastLength)
slowVolMA = ta.sma(volume, slowLength)
volumeOscillator = fastVolMA - slowVolMA

// محاسبه VRSI (Volume RSI)
vrsi = ta.rsi(volume, lengthRSI)

// شمارش اندیکاتورهای سیگنال خرید
buySignals = 0
buySignals := buySignals + (obv > obv[1] ? 1 : 0)
buySignals := buySignals + (ad > ad[1] ? 1 : 0)
buySignals := buySignals + (cmf > 0 ? 1 : 0)
buySignals := buySignals + (mfi < 40 ? 1 : 0)
buySignals := buySignals + (close < vwap ? 1 : 0)
buySignals := buySignals + (volumeOscillator > 0 ? 1 : 0)
buySignals := buySignals + (vrsi < 40 ? 1 : 0)

// شمارش اندیکاتورهای سیگنال فروش
sellSignals = 0
sellSignals := sellSignals + (obv < obv[1] ? 1 : 0)
sellSignals := sellSignals + (ad < ad[1] ? 1 : 0)
sellSignals := sellSignals + (cmf < 0 ? 1 : 0)
sellSignals := sellSignals + (mfi > 60 ? 1 : 0)
sellSignals := sellSignals + (close > vwap ? 1 : 0)
sellSignals := sellSignals + (volumeOscillator < 0 ? 1 : 0)
sellSignals := sellSignals + (vrsi > 60 ? 1 : 0)

// شرایط سیگنال خرید: اگر بیش از 4 اندیکاتور سیگنال خرید دهند
buyCondition = (buySignals > 4)

// شرایط سیگنال فروش: اگر بیش از 4 اندیکاتور سیگنال فروش دهند
sellCondition = (sellSignals > 4)

// ورود به معامله خرید
if (buyCondition)
    strategy.entry("Buy", strategy.long)

// خروج از معامله فروش
if (sellCondition)
    strategy.close("Buy")

// رسم سیگنال‌های خرید و فروش بر روی چارت
plotshape(buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")