L1 MartinGale Stratégie de scalping

Auteur:Z3192, Date: 2023-10-09 07:06:32
Les étiquettes:

La stratégie de Martin Gale est une stratégie de gestion de fonds couramment utilisée dans le trading. Elle est généralement utilisée lorsque les traders cherchent à récupérer en augmentant la taille de leur position après chaque perte.

Dans la stratégie de Martin Gale, les traders doublent la taille de leur position après chaque transaction en perte. Ils le font dans l'espoir d'obtenir une transaction rentable pour récupérer les pertes précédentes et réaliser un profit.

L'idée derrière la stratégie de Martin Gale est d'utiliser la loi de l'équilibre. En augmentant la taille de la position après chaque perte, la stratégie suppose qu'une transaction rentable finira par se produire, ce qui non seulement compense les pertes précédentes, mais génère également des profits. Cela peut être particulièrement attrayant pour les traders qui cherchent à se remettre rapidement de leurs pertes.

Cependant, il est important de noter que la stratégie Martin Gale présente des risques importants. Si le trader connaît une phase de perte continue ou n'a pas suffisamment de fonds, la stratégie peut entraîner des pertes importantes. Elle repose sur l'hypothèse que des transactions rentables se produisent dans un certain laps de temps, ce qui est dangereux car il n'est pas possible de garantir des transactions rentables dans un certain laps de temps. Les traders qui envisagent de mettre en œuvre la stratégie Martin Gale doivent évaluer attentivement leur capacité à supporter les risques et être pleinement conscients des inconvénients potentiels. Il est important d'établir un plan de gestion des risques fiable pour atténuer les pertes potentielles. De plus, les traders doivent être conscients que la stratégie peut ne pas s'appliquer à toutes les situations du marché et peut nécessiter des ajustements en fonction des fluctuations du marché.

En résumé, la stratégie Martin Gale est une stratégie de gestion de fonds qui consiste à augmenter la taille de la position après chaque perte pour tenter de se remettre d'une phase de perte. Bien qu'elle puisse offrir un potentiel de reprise rapide, il existe également des risques importants que les traders doivent considérer attentivement avant de mettre en œuvre cette méthode de trading.

Bien que n'étant pas très d'accord avec cette idée de transaction, certains ont tweeté en privé pour parler du sujet et ont écrit un cadre simple de 38 lignes, le Martin Gale de la ligne courte.

La stratégie du chapeau de Martin Gale est une stratégie de trading qui génère des profits grâce à des transactions fréquentes. Elle utilise l'intersection des moyennes mobiles pour générer des signaux d'entrée et de sortie.

La stratégie définit d'abord les variables d'entrée, telles que les niveaux de stop-loss et de stop-loss, ainsi que le mode de trading ("multi-head, blank-head ou bidirectionnel"); puis, elle définit une règle permettant d'entrer uniquement lorsque le mode de trading est configuré en multi-head.

La logique stratégique utilise une simple définition des signaux de croisement et des signaux de croisement des moyennes mobiles (SMA); elle calcule les SMA à court terme (SMA3) et les SMA à long terme (SMA8), et les dessine sur un graphique. Les variables crossoverSignal et crossunderSignal sont utilisées pour suivre l'apparition des événements de croisement et de croisement, tandis que les variables crossoverState et crossunderState déterminent l'état des conditions de croisement et de croisement.

La stratégie est exécutée en fonction de la taille du portefeuille actuel. Si le portefeuille est de zéro (pas de portefeuille), la stratégie examine les croisements et les croisements. Si un croisement se produit et que le mode de négociation permet de nombreuses entrées, il entre dans une position multi-tête. Les prix d'entrée, les prix de stop-loss, les prix de stop-loss et les prix de stop-loss sont calculés en fonction du prix de clôture actuel et de la valeur SMA8. Si plusieurs positions existent et que le prix de clôture actuel atteint le prix stop-loss ou le prix stop-loss, et qu'un événement croisé se produit, la position multi-tête est mise à plat. Le prix d'entrée, le prix stop-loss, le prix stop-loss et le prix stop-loss seront réinitialisés à zéro.

De même, si une position en échec est présente et que le prix de clôture actuel atteint le prix de stop-loss ou le prix de stop-loss, et qu'un événement de croisement se produit, la position en échec est levée et la variable de prix est réinitialisée.

La stratégie utilise également la fonction plotshape pour tracer les points d'entrée et de sortie sur le graphique. Elle montre un triangle pointant vers le haut indiquant une entrée, un triangle pointant vers le bas indiquant une entrée, un triangle pointant vers le bas indiquant une entrée, un triangle pointant vers le bas indiquant une entrée et un triangle pointant vers le haut indiquant une sortie.

Dans l'ensemble, la stratégie de rasage de Martin Gale vise à capturer de petits profits en exploitant le croisement des moyennes mobiles à court terme. Elle permet de gérer les risques par des niveaux de stop-loss et de stop-loss, et permet à différents modèles de trading de s'adapter à différentes conditions du marché.


//@version=5
 strategy('[blackcat] L1 MartinGale Scalping Strategy', overlay=true, pyramiding = 5)
 
 // Define input variables
// martingaleMultiplier = input(2, title="加倍倍数")
 takeProfit = input(1.03, title='Take Profit')
 stopLoss = input(0.95, title='Stop Loss')
 inputTradingMode = input.string(defval='Long', options=['Long', 'Short', 'BiDir'], title='Trading Mode')
 
 //The purpose of this rule is to forbid short entries, only long etries will be placed. The rule affects the following function: 'entry'.
strategy.risk.allow_entry_in(inputTradingMode == 'Long' ? strategy.direction.long : inputTradingMode == 'Short' ? strategy.direction.short : strategy.direction.all)

// Define strategy logic 
entryPrice = 0.0
stopPrice = 0.0
takeProfitPrice = 0.0
stopLossPrice = 0.0

// Define SMA crossover and crossunder signals
sma3 = ta.sma(close, 3)
sma8 = ta.sma(close, 8)
plot(sma3, color=color.yellow)
plot(sma8, color=color.fuchsia)
crossoverSignal = ta.crossover(sma3, sma8)
crossunderSignal = ta.crossunder(sma3, sma8)
crossoverState = sma3 > sma8
crossunderState = sma3 < sma8

if strategy.position_size == 0
    if crossoverState
       strategy.entry('Buy',strategy.long)
       entryPrice := close
       stopPrice := close - stopLoss * sma8[1]
       takeProfitPrice := close + takeProfit * sma8[1]
       stopLossPrice := stopPrice
       stopLossPrice
    if crossunderState
        strategy.entry('Sell', strategy.short)
        entryPrice := close
        stopPrice := close + stopLoss *  sma8[1]
        takeProfitPrice := close - takeProfit *  sma8[1]
        stopLossPrice := stopPrice
        stopLossPrice

if strategy.position_size > 0
    if (close > takeProfitPrice or close < stopLossPrice) and crossunderState
        strategy.close('Buy')
        entryPrice := 0.0
        stopPrice := 0.0
        takeProfitPrice := 0.0
        stopLossPrice := 0.0
        stopLossPrice
    else
        strategy.entry('Buy', strategy.long)
        entryPrice := close
        stopPrice := close - stopLoss *  sma8[1]
        takeProfitPrice := close + takeProfit *  sma8[1]
        stopLossPrice := stopPrice
        stopLossPrice

if strategy.position_size < 0
    if (close > takeProfitPrice or close < stopLossPrice) and crossoverState
        strategy.close('Sell')
        entryPrice := 0.0
        stopPrice := 0.0
        takeProfitPrice := 0.0
        stopLossPrice := 0.0
        stopLossPrice
    else
        strategy.entry('Sell', strategy.short)
        entryPrice := close
        stopPrice := close + stopLoss *  sma8[1]
        takeProfitPrice := close - takeProfit *  sma8[1]
        stopLossPrice := stopPrice
        stopLossPrice

// Plot entry and exit points
plotshape(strategy.position_size > 0 and crossoverSignal, 'Buy Entry', shape.triangleup, location.belowbar, color.new(color.green, 0), size=size.small)
plotshape(strategy.position_size > 0 and (close >= takeProfitPrice or close <= stopLossPrice), 'Buy Exit', shape.triangledown, location.abovebar, color.new(color.red, 0), size=size.small)
plotshape(strategy.position_size < 0 and crossunderSignal, 'Sell Entry', shape.triangledown, location.abovebar, color.new(color.red, 0), size=size.small)
plotshape(strategy.position_size < 0 and (close >= takeProfitPrice or close <= stopLossPrice), 'Sell Exit', shape.triangleup, location.belowbar, color.new(color.green, 0), size=size.small)

Plus de