
Cette stratégie prend en compte de multiples dimensions telles que la liquidité du marché, les tendances et les indicateurs techniques, et permet de négocier une stratégie de courte ligne. Cette stratégie peut suivre la tendance et exploiter les opérations d’ouverture de position lorsque la liquidité du marché est meilleure, ce qui permet de réaliser des bénéfices de courte ligne.
Principe de base: cette stratégie prend en compte principalement les deux dimensions de la liquidité du marché et de la tendance. Opérer en ligne courte lorsque la liquidité du marché est bonne et que la tendance est présente.
Indicateur de la liquidité du marché: cette stratégie utilise principalement les MFI et les variations du volume des transactions comme indicateur de la liquidité du marché. Lorsque les MFI sont en hausse et que le volume des transactions est en hausse, nous pensons que la liquidité du marché est meilleure et convient à l’ouverture de positions.
Détermination de la tendance: cette stratégie combine plusieurs indicateurs pour déterminer la tendance. La tendance est forte lorsque l’ADX est supérieur à 30 et son EMA.
Conditions d’ouverture de position: lorsque le marché est fluide et qu’il y a une tendance, un signal d’ouverture de position est généré si d’autres conditions auxiliaires (comme le jugement de la position SAR, etc.) sont également remplies.
Les paramètres de stop loss et de stop stop: La stratégie définit des paramètres de stop loss et de stop loss fixes (de 10 points) et de stop loss (de 7,5 points) pour chaque transaction.
Cette stratégie présente les avantages suivants:
Utilisez le moment de la liquidité du marché: jugez la liquidité du marché en fonction des MFI et du volume des transactions, évitez d’ouvrir des positions lorsque la liquidité du marché est faible.
Suivre les tendances pour en tirer profit: en combinant des indicateurs tels que l’EMA pour déterminer la direction de la tendance, aider à en tirer profit.
Le contrôle du risque est en place: un stop loss fixe est mis en place pour contrôler efficacement la perte maximale d’une seule transaction.
La fréquence des transactions est élevée: comme stratégie de courte durée, la fréquence des transactions est relativement élevée, ce qui est approprié pour accumuler des bénéfices progressivement.
Les paramètres ont plus d’espace d’optimisation: les paramètres MA, les paramètres de stop-loss, etc. peuvent être optimisés pour améliorer l’efficacité de la stratégie.
Cette stratégie présente aussi des risques:
Risque de contrôle des points de glissement du disque: le stop-loss théorique ne reflète pas complètement la situation du disque réel, et les points de glissement du disque réel peuvent être plus importants.
Risque d’échec de la détection de tendances: la stratégie s’appuie davantage sur les indicateurs de la détection de tendances, mais il existe toujours un risque d’échec.
Risque de sur-transaction: en tant que stratégie de raccourcissement, une mauvaise configuration des paramètres peut entraîner une sur-transaction.
Risque d’anomalies du marché: la stratégie peut ne pas fonctionner correctement dans des situations extrêmes, telles que la faible liquidité du marché ou des changements de politique.
En conséquence, nous pouvons réduire le risque de plusieurs façons:
Laissez une marge de stop-loss appropriée, en tenant compte des facteurs de dérapage du disque dur.
Optimiser la logique de jugement des tendances, introduire plus d’indicateurs et réduire la probabilité de défaillance.
Il a ajouté des restrictions sur la fréquence d’ouverture des positions afin d’éviter une survente.
Adapter les paramètres de manière flexible en fonction des conditions du marché et des situations exceptionnelles.
Les orientations d’optimisation de cette stratégie sont les suivantes:
L’introduction de plus d’indicateurs d’optimisation des tendances rend les jugements plus précis. Par exemple, l’introduction de l’indicateur MACD.
Optimiser les paramètres périodiques de MA pour trouver la combinaison optimale de paramètres.
Améliorer les stratégies d’arrêt de perte, par exemple en utilisant des arrêts mobiles, des arrêts intermédiaires, etc.
Ajoutez des limites au nombre de transactions pour éviter les transactions trop fréquentes. Par exemple, vous pouvez ouvrir un maximum de 3 positions par jour.
Chercher de meilleurs indicateurs de liquidité sur le marché afin de mieux juger le moment d’ouvrir une position. Par exemple, introduire des indicateurs tels que le flux net.
Ajout d’une fonction d’optimisation des paramètres permettant l’optimisation automatique des paramètres pour trouver la combinaison optimale de paramètres.
La stratégie prend en compte plusieurs dimensions, telles que la liquidité et la tendance du marché, pour capturer les bénéfices dans les lignes courtes. Par rapport à la stratégie de tendance traditionnelle, la plus grande innovation de la stratégie réside dans l’introduction d’indicateurs de liquidité du marché, afin d’éviter de prendre position en cas de manque de liquidité du marché. En contrepartie, la stratégie présente également un certain risque de contrôle des risques et de défaillance de la tendance. Nous pouvons améliorer continuellement la stratégie en introduisant plus d’indicateurs, en optimisant les paramètres et en gérant les risques.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © trent777brown
//@version=5
strategy("scalping with market facilitation", overlay=true, margin_long=100, margin_short=100)
MFI0 = (high - low) / volume
MFI1 = (high[1] - low[1]) / volume[1]
MFIplus = MFI0 > MFI1
MFIminus = MFI0 < MFI1
//Current Trend-(Changed mean to trend)-revised
trendplus = hl2 > high[1]
trendzero = hl2 < high[1] and hl2 > low[1] //addition of script
trendminus = hl2 < low[1] //changed high to low
//Volume +/-
volplus = volume > volume[1]
volminus = volume < volume[1]
//Period Control by Buyers or Sellers is determined with reference to Price action of the period
//divided into 3 sectors, sector 1 is the Top third, Sector 2 is the middle third,
//and sector 3 is the Bottom third of the period. Control classifications are: Extremes(11, 33), Neutral(22),
//Climbers(31,21,32) Open lower than Close, and Drifters(13,23,12)Close lower than Open
//value0 = low
//value1 = ((high - low)/3)
//value2 = ((high - low)/3)*2
//value3 = high
//o1 = (open >= (((high - low)/3) * 2) + low)
//c1 = (close >= (((high - low)/3) * 2) + low)
//o2 = (open <= o1)
//c2 = (close <= c1)
//o3 = (open <= ((high - low)/3) + low)
//c3 = (close <= ((high - low)/3) + low)
//sector2 = if((high - low)/3) + low and sector2 <= (((high - low)/3)*2) + low
//sector3 = if((high - low)/3) + low and >= low
//Extremes-Full Control of Period by Buyers or Sellers
//pg79 notes an 85% chance that the current trend will change in the next 1 to 5 bars
b11 = open >= (high - low) / 3 * 2 + low and close >= (high - low) / 3 * 2 + low //Extreme Buyer Control:Chartruse
b33 = open <= (high - low) / 3 + low and close <= (high - low) / 3 + low //Extreme Seller Control:Crimson
//Neutral pg80
b22 = open >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 and close >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 //Bracketed Price Control
//Climber-Open lower than Close pg81
b31 = open <= (high - low) / 3 + low and close >= (high - low) / 3 * 2 + low //Strong Buyer Control:Dark Green
b21 = open >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 and close >= (high - low) / 3 * 2 + low //Moderate Buyer Control:Green
b32 = open <= (high - low) / 3 + low and close >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 //Weak Buyer Control:Light Green
//Drifter-Close lower than Open pg81
b13 = open >= (high - low) / 3 * 2 + low and close <= (high - low) / 3 + low //Strong Seller Control:Dark Red
b23 = open >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 and close <= (high - low) / 3 + low //Moderate Seller Control:Red
b12 = open >= (high - low) / 3 * 2 + low and close >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 //Weak Seller Control:Light Red/Pink
//
psar= ta.sar(.09, .2, .2)
ema8= ta.ema(hlc3, 8)
ema13h= ta.ema(high, 13)
ema13l= ta.ema(low, 13)
ema13= ta.ema(close, 13)
ema55= ta.ema(close, 100)
[dip, dim, adx]= ta.dmi(5, 5)
adxema=ta.ema(adx, 3)
[macdl, sigl, histl]= ta.macd(close, 8, 13, 5)
obv= ta.obv
obvema= ta.ema(obv, 8)
obvema55= ta.ema(obv, 55)
mfigreen= MFIplus and volplus
adx_x_over= ta.crossover(adx, adxema) and adx >= 25
barssincemfi= ta.barssince(mfigreen)
longtrig2= adx > 30 and adx > adxema and barssincemfi <= 4
shorttrig2= adx > 30 and adx > adxema and barssincemfi <= 4
long= macdl > sigl and obv > obvema55 and ema8 > ema55 and psar < low and trendplus//and ema13l > ema55//and open > hull200 and close > hull200
short= macdl < sigl and obv < obvema55 and ema8 < ema55 and psar > high and trendminus//and ema13h < ema55//open < hull200 and close < hull200
//plot(hull200, color=color.red, linewidth=3)
plot(ema13h, color=color.gray, linewidth=3)
plot(ema13l, color=color.gray, linewidth=3)
plot(ema13, color=color.blue, linewidth=3)
//
plot(ema55, color=color.white, linewidth=3)
plot(psar, color=color.white, style=plot.style_circles)
plotshape(mfigreen, color=color.yellow, style=shape.flag, location=location.belowbar, size= size.tiny)
longCondition = long
if (longCondition)
strategy.entry("My Long Entry Id", strategy.long, 1, when= longtrig2)
strategy.exit("exit long", "My Long Entry Id", profit= 100, loss= 75)
shortCondition = short
if (shortCondition)
strategy.entry("My Short Entry Id", strategy.short, 1, when= shorttrig2)
strategy.exit("exit short", "My Short Entry Id", profit= 100, loss= 75)