Mohamed Abdelmaaboud
Mohamed Abdelmaaboud
5 (1)
  • Informations
7+ années
expérience
2
produits
0
versions de démo
3
offres d’emploi
0
signaux
0
les abonnés
✅ I am Mohamed Hassan Abdel Maaboud, a financial market technical strategist, trader, trading trainer and coach, and trading systems developer with experience in the financial markets field since 2014.
✅ Certified Financial Technician® (CFTe®) holder from IFTA (International Federation of Technical Analysts).
✅ Certified ESTA Technical Analyst (CETA ) holder from ESTA (The Egyptian Society of Technical Analysts).
✅ The founder of Trades Coding for trading software products and services.
👉 Check out the website through the link: https://tradescoding.com/
✅ The founder of Trades Analysis for trading training and consulting services.
👉 Check out the website through the link: https://tradesanalysis.com/
✅ I am passionate about what I do and interested in adding more value using my experience in the field.

✅ I am the author of many articles here on the MQL5 website about algorithmic trading and how to create a trading system based on the most popular technical indicators.
You can find them through the following link:
👉 https://www.mql5.com/en/users/m.aboud/publications

✅You can join my telegram channel through the following link:
👉 https://t.me/tradescoding

✅ I author trading tools for MetaTrader 4 and MetaTrader 5.
You can find them through the following link:
👉 https://www.mql5.com/en/users/m.aboud/seller

✅ I can code smoothly with programming languages MQL4, and MQL5 to create trading systems for MetaTrader 4 and MetaTrader 5.
If you want a personal job, you can request that through the following link:
👉 https://www.mql5.com/en/job/new?prefered=m.aboud
Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur l’indicateur Williams PR
Apprenez à concevoir un système de trading basé sur l’indicateur Williams PR

Un nouvel article dans notre série sur l'apprentissage de la conception d'un système de trading par les indicateurs techniques les plus populaires de MQL5 à utiliser dans le MetaTrader 5. Dans cet article, nous allons apprendre à concevoir un système de trading basé sur l'indicateur %R de Williams.

Mohamed Abdelmaaboud
Article publié Apprendre à concevoir un système de trading basé sur l’Ichimoku
Apprendre à concevoir un système de trading basé sur l’Ichimoku

Voici un nouvel article dans notre série sur la façon de concevoir un système de trading avec les indicateurs les plus populaires. Nous allons parler de l'indicateur Ichimoku en détail et de comment concevoir un système de trading basé sur cet indicateur.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur les Volumes
Apprenez à concevoir un système de trading basé sur les Volumes

Voici un nouvel article de notre série sur l'apprentissage de la conception de systèmes de trading basés sur les indicateurs techniques les plus populaires. Cette fois-ci, notre article sera consacré à l'indicateur Volumes. Le concept de volume est l'un des facteurs les plus importants dans le trading sur les marchés financiers. Nous devons donc y prêter attention. Dans cet article, nous allons apprendre à concevoir un système de trading simple grâce à l'indicateur des Volumes.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur le MFI
Apprenez à concevoir un système de trading basé sur le MFI

Le nouvel article de notre série sur la conception d'un système de trading basé sur les indicateurs techniques les plus populaires est basé sur un nouvel indicateur technique : le Money Flow Index (MFI). Nous l'apprendrons en détail et développerons un système de trading simple en MQL5 pour l'exécuter dans MetaTrader 5.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading utilisant l’Accumulation/Distribution (AD)
Apprenez à concevoir un système de trading utilisant l’Accumulation/Distribution (AD)

Bienvenue dans ce nouvel article de notre série sur l'apprentissage de la conception de systèmes de trading basés sur les indicateurs techniques les plus populaires. Dans cet article, nous découvrirons un nouvel indicateur technique appelé indicateur d'Accumulation/Distribution et découvrirons comment concevoir un système de trading en MQL5 basé sur des stratégies de trading AD Simples.

DIMITAR VASILEV
DIMITAR VASILEV 2022.12.17
//+------------------------------------------------------------------+
//| TRENDLINE_RVI_DeMarker_ADX_ACMA_AO SYSTEM.mq5 |
//| Copyright 2022, MetaQuotes Ltd. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2022, MetaQuotes Ltd."
#property link "https://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit() {
//--- create timer EventSetTimer(60); //--- return(INIT_SUCCEEDED); }
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {
//--- destroy timer EventKillTimer(); }
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick() {
////////////////////////Trend Lines//////////////////////////////////// long candlesUp = ChartGetInteger(0, CHART_FIRST_VISIBLE_BAR, 0); double pLow[]; ArraySetAsSeries(pLow, true); CopyLow(_Symbol, _Period, 0, candlesUp, pLow); long candleLow = ArrayMinimum(pLow, 0, candlesUp); MqlRates pArrayUp[]; ArraySetAsSeries(pArrayUp, true); long DataUp = CopyRates(_Symbol, _Period, 0, candlesUp, pArrayUp); ObjectDelete(_Symbol,"UpwardTrendline"); ObjectCreate(_Symbol, "UpwardTrendline", OBJ_TREND, 0, pArrayUp[candleLow].time, pArrayUp[candleLow].low, pArrayUp[0].time, pArrayUp[0].low); ObjectSetInteger(0, "UpwardTrendline", OBJPROP_COLOR, Blue); ObjectSetInteger(0, "UpwardTrendline", OBJPROP_STYLE, STYLE_SOLID); ObjectSetInteger(0, "UpwardTrendline", OBJPROP_WIDTH, 1); ObjectSetInteger(0, "UpwardTrendline", OBJPROP_RAY_RIGHT, true); long candlesDown = ChartGetInteger(0, CHART_FIRST_VISIBLE_BAR, 0); double pHighDown[]; ArraySetAsSeries(pHighDown, true); CopyHigh(_Symbol, _Period, 0, candlesDown, pHighDown); long candleHighDown = ArrayMaximum(pHighDown, 0, candlesDown); MqlRates pArrayDown[]; ArraySetAsSeries(pArrayDown, true); int DataDown = CopyRates(_Symbol, _Period, 0, candlesDown, pArrayDown); ObjectDelete(_Symbol, "DownwardTrendline"); ObjectCreate(_Symbol, "DownwardTrendline", OBJ_TREND, 0, pArrayDown[candleHighDown].time, pArrayDown[candleHighDown].high, pArrayDown[0].time, pArrayDown[0].high); ObjectSetInteger(0, "DownwardTrendline", OBJPROP_COLOR, Blue); ObjectSetInteger(0, "DownwardTrendline", OBJPROP_STYLE, STYLE_SOLID); ObjectSetInteger(0, "DownwardTrendline", OBJPROP_WIDTH, 1); ObjectSetInteger(0, "DownwardTrendline", OBJPROP_RAY_RIGHT, true); long candlesSupport = ChartGetInteger(0, CHART_FIRST_VISIBLE_BAR, 0); double pLowSupport[]; ArraySetAsSeries(pLowSupport, true); CopyLow(_Symbol, _Period, 0, candlesSupport, pLowSupport); long candleLowSupport = ArrayMinimum(pLowSupport, 0, candlesSupport); MqlRates pArraySupport[]; ArraySetAsSeries(pArraySupport, true); int DataSupport = CopyRates(_Symbol, _Period, 0, candlesSupport, pArraySupport); ObjectDelete(_Symbol, "supportLine"); ObjectCreate(_Symbol, "supportLine", OBJ_HLINE, 0, pArraySupport[candleLowSupport].time, pArraySupport[candleLowSupport].low, pArraySupport[0].time, pArraySupport[0].low); ObjectSetInteger(0, "supportLine", OBJPROP_COLOR, Green); ObjectSetInteger(0, "supportLine", OBJPROP_STYLE, STYLE_SOLID); ObjectSetInteger(0, "supportLine", OBJPROP_WIDTH, 3); ObjectSetInteger(0, "supportLine", OBJPROP_RAY, true); long candlesResistance = ChartGetInteger(0, CHART_FIRST_VISIBLE_BAR, 0); double pHighResistance[]; ArraySetAsSeries(pHighResistance, true); CopyHigh(_Symbol, _Period, 0, candlesResistance, pHighResistance); long candleHighResistance = ArrayMaximum(pHighResistance, 0, candlesResistance); MqlRates pArrayResistance[]; ArraySetAsSeries(pArrayResistance, true); long DataResistance = CopyRates(_Symbol, _Period, 0, candlesResistance, pArrayResistance); ObjectDelete(_Symbol, "resistanceLine"); ObjectCreate(_Symbol, "resistanceLine", OBJ_HLINE, 0, pArrayResistance[candleHighResistance].time, pArrayResistance[candleHighResistance].high, pArrayResistance[0].time, pArrayResistance[0].high); ObjectSetInteger(0, "resistanceLine", OBJPROP_COLOR, Red); ObjectSetInteger(0, "resistanceLine", OBJPROP_STYLE, STYLE_SOLID); ObjectSetInteger(0, "resistanceLine", OBJPROP_WIDTH, 3); ObjectSetInteger(0, "resistanceLine", OBJPROP_RAY_RIGHT, true); /////////////////////////////////////VIDYA///////////////////////////////////////////// MqlRates priceArrayVIDYA[]; double vidyaArray[]; double vidyaArray1[]; int DataVIDYA = CopyRates(_Symbol, _Period, 0, 3, priceArrayVIDYA); ArraySetAsSeries(vidyaArray, true); ArraySetAsSeries(vidyaArray1, true); int vidyaDef = iVIDyA(_Symbol, _Period, 9, 12, 0, PRICE_CLOSE); int vidyaDef1 = iVIDyA(_Symbol, _Period, 20, 50, 0, PRICE_CLOSE); CopyBuffer(vidyaDef, 0, 0, 3, vidyaArray); CopyBuffer(vidyaDef1, 0, 0, 3, vidyaArray1); double currentCloseVIDYA = NormalizeDouble(priceArrayVIDYA[2].close, 6); double vidyaVal = NormalizeDouble(vidyaArray[0], 6); double vidyaVal1 = NormalizeDouble(vidyaArray1[0], 6); ///////////////////RVI Moving Average///////////////////////////////////////////////// MqlRates pArrayRVI_MA[]; double maArrayRVI_MA[]; double rviArray[]; double rviSignalArray[]; int DataRVI_MA = CopyRates(_Symbol, _Period, 0, 1, pArrayRVI_MA); ArraySetAsSeries(maArrayRVI_MA, true); ArraySetAsSeries(rviArray, true); ArraySetAsSeries(rviSignalArray, true); int rviDef = iRVI(_Symbol, _Period, 10); int maDefRVI_MA = iMA(_Symbol, _Period, 100, 0, MODE_EMA, PRICE_CLOSE); CopyBuffer(rviDef, 0, 0, 3, rviArray); CopyBuffer(rviDef, 1, 0, 3, rviSignalArray); CopyBuffer(maDefRVI_MA, 0, 0, 3, maArrayRVI_MA); double rviValue = NormalizeDouble(rviArray[0], 3); double rviSignalValue = NormalizeDouble(rviSignalArray[0], 3); double maValueRVI_MA = NormalizeDouble(maArrayRVI_MA[0], 3); ////////////////////ACELERATOR_OSCILLATOR////////////////////////////////////// MqlRates pArrayACMA[]; double acArray[]; double maArrayACMA[]; int DataACMA = CopyRates(_Symbol,_Period, 0, 1, pArrayACMA); ArraySetAsSeries(acArray, true); ArraySetAsSeries(maArrayACMA, true); int acDefACMA = iAC(_Symbol, _Period); int maDefACMA = iMA(_Symbol, _Period, 50, 0, MODE_EMA, PRICE_CLOSE); CopyBuffer(acDefACMA, 0, 0, 3, acArray); CopyBuffer(maDefACMA,0, 0, 3, maArrayACMA); int acMaxArray = ArrayMaximum(acArray, 1, WHOLE_ARRAY); int acMinArray = ArrayMinimum(acArray, 1, WHOLE_ARRAY); double closingPriceACMA = pArrayACMA[0].close; double acValue = NormalizeDouble(acArray[0], 7); double acMaxValue = NormalizeDouble(acArray[acMaxArray], 7); double acMinValue = NormalizeDouble(acArray[acMinArray], 7); double maValueACMA = NormalizeDouble(maArrayACMA[0], 7);
///////////////////////AWESOME_OSCILLATOR/////////////////////////////////////////// MqlRates pArrayAO[]; double aoArray[]; double maArrayAO[]; int DataAO = CopyRates(_Symbol, _Period, 0, 1, pArrayAO); ArraySetAsSeries(aoArray, true); ArraySetAsSeries(maArrayAO, true); int aoDef = iAO(_Symbol, _Period); int maDefAO = iMA(_Symbol, _Period, 50, 0, MODE_EMA, PRICE_CLOSE); CopyBuffer(aoDef, 0, 0, 3, aoArray); CopyBuffer(maDefAO, 0, 0,3, maArrayAO); double closingPriceAO = pArrayAO[0].close; double aoValue = NormalizeDouble(aoArray[0], 7); double maValueAO = NormalizeDouble(maArrayAO[0], 7); ///////////////////////////DeMARKER_DIVERGENCE////////////////////////////////////////// double deMarkerArray[]; MqlRates pArrayDeMarker[]; ArraySetAsSeries(deMarkerArray, true); ArraySetAsSeries(pArrayDeMarker, true); int deMarkerDef = iDeMarker(_Symbol, _Period, 14); int pDataDeMarker = CopyRates(_Symbol, _Period, 0, 14, pArrayDeMarker); CopyBuffer(deMarkerDef, 0, 0, 14, deMarkerArray); double deMarkerVal = NormalizeDouble(deMarkerArray[0], 4); double deMarkerPrevVal = NormalizeDouble(deMarkerArray[1], 4); double currentHighDeMarker = NormalizeDouble(pArrayDeMarker[0].high, 6); double currentLowDeMarker = NormalizeDouble(pArrayDeMarker[0].low, 6); double prevHighDeMarker = NormalizeDouble(pArrayDeMarker[1].high, 6); double prevLowDeMarker = NormalizeDouble(pArrayDeMarker[1].low, 6); /////////////////////////////////////ADX//////////////////////////////////////
//creating a variable for signal //Create arrays for current ADX value, previous ADX value, +DI value and -DI value double ADXArray0[]; double ADXArray1[]; double PDIArray[]; double NDIArray[]; //Identifying the ADX, positive DI, negative DI. int ADXDef = iADX(_Symbol, _Period, 14); //Sort price arrays from current data ArraySetAsSeries(ADXArray0,true); ArraySetAsSeries(ADXArray1,true); ArraySetAsSeries(PDIArray,true); ArraySetAsSeries(NDIArray,true); //Filling data according to created ADX CopyBuffer(ADXDef,0,0,3,ADXArray0); CopyBuffer(ADXDef,0,0,2,ADXArray1); CopyBuffer(ADXDef,1,0,3,PDIArray); CopyBuffer(ADXDef,2,0,3,NDIArray); //Getting values of the current data double ADXValue=NormalizeDouble(ADXArray0[0], 2); double ADXValueLast=NormalizeDouble(ADXArray1[1], 2); double PDIValue=NormalizeDouble(PDIArray[0], 2); double NDIValue=NormalizeDouble(NDIArray[0], 2); //////////////////////////CONDITIONS//////////////////////////////////////////// bool BUY_CONDITION_1 = (vidyaVal > vidyaVal1); bool BUY_CONDITION_2 = (acValue > acMaxValue) && (closingPriceACMA > maValueACMA); bool BUY_CONDITION_3 = (aoValue > 0) && (closingPriceAO > maValueAO); bool BUY_CONDITION_4 = (pArrayRVI_MA[0].close > maValueRVI_MA) && (rviValue > rviSignalValue); bool BUY_CONDITION_5 = (ADXValue > 25) && (ADXValue > ADXValueLast); bool BUY_CONDITION_6 = (PDIValue > NDIValue); bool BUY_CONDITION_7 = (currentHighDeMarker > prevHighDeMarker) && (deMarkerVal < deMarkerPrevVal); //For BEARISH DIVERGENCE. bool SELL_CONDITION_1 = (vidyaVal < vidyaVal1); bool SELL_CONDITION_2 = (acValue < acMinValue) && (closingPriceACMA < maValueACMA); bool SELL_CONDITION_3 = (aoValue < 0) && (closingPriceAO < maValueAO); bool SELL_CONDITION_4 = (pArrayRVI_MA[0].close < maValueRVI_MA) && (rviValue < rviSignalValue); bool SELL_CONDITION_5 = (ADXValue > 25) && (ADXValue > ADXValueLast); bool SELL_CONDITION_6 = (PDIValue < NDIValue); bool SELL_CONDITION_7 = (currentLowDeMarker < prevLowDeMarker) && (deMarkerVal > deMarkerPrevVal); //For BULLISH DIVERGENCE. if((BUY_CONDITION_1) == 1) { Comment("BUY","\n", "Current Close Value is ",currentCloseVIDYA,"\n", "Current VIDYA (9,12) Value is ",vidyaVal,"\n", "Current VIDYA (20,50) Value is ",vidyaVal1); if((BUY_CONDITION_5 && BUY_CONDITION_6) == 1) { Comment("AC Closing Price Is ", closingPriceACMA, "\n", "AC Value Is ", acValue, "\n", "AC Max Value Is ", acMaxValue, "\n", "AC Min Value Is ", acMinValue, "\n", "AC MA Value Is ", maValueACMA, "\n", "AO Closing Price is ", closingPriceAO, "\n", "AO Value Is ", aoValue, "\n", "AO MA Value Is ", maValueAO, "\n", "RVI Closing price is ", pArrayRVI_MA[0].close, "\n", "RVI MA Value is ", maValueRVI_MA, "\n", "Relative Vigor Index Is ", rviValue, "\n", "RVI Signal Value Is ", rviSignalValue, "\n", "ADX Value is ", ADXValue, "\n", "ADX Value Last is ", ADXValueLast, "\n", "+DI Value is ", PDIValue, "\n", "-DI Value is ", NDIValue, "\n", "Current High Is ", currentHighDeMarker, "\n", "Prev. High Value Is ", prevHighDeMarker, "\n", "Current DeMarker Value Is ", deMarkerVal, "\n", "Prev. DeMarker Value Is ", deMarkerPrevVal); } } if((SELL_CONDITION_1) == 1) { Comment("SELL","\n", "Current Close Value is ",currentCloseVIDYA,"\n", "Current VIDYA (9,12) Value is ",vidyaVal,"\n", "Current VIDYA (20,50) Value is ",vidyaVal1); if((SELL_CONDITION_5 && SELL_CONDITION_6) == 1) { Comment("AC Closing Price Is ", closingPriceACMA, "\n", "AC Value Is ", acValue, "\n", "AC Max Value Is ", acMaxValue, "\n", "AC Min Value Is ", acMinValue, "\n", "AC MA Value is ", maValueACMA, "\n", "AO Closing Price Is ", closingPriceAO, "\n", "AO Value Is ", aoValue, "\n", "AO MA Value Is ", maValueAO, "\n", "RVI Closing Price Is ", pArrayRVI_MA[0].close, "\n", "RVI MA Value Is ", maValueRVI_MA, "\n", "Relative Vigor Index Is ", rviValue, "\n", "RVI Signal Value Is ", rviSignalValue, "\n", "ADX Value is ", ADXValue, "\n", "ADX Value Last is ", ADXValueLast, "\n", "+DI Value is ", PDIValue, "\n", "-DI Value is ", NDIValue, "\n", "Current Low Is ", currentLowDeMarker, "\n", "Prev. Low Is ", prevLowDeMarker, "\n", "Current DeMarker Value Is ", deMarkerVal, "\n", "Prev. DeMarker Value Is ", deMarkerPrevVal); } } } //+------------------------------------------------------------------+
//| Timer function |
//+------------------------------------------------------------------+
void OnTimer() {
//--- }
//+------------------------------------------------------------------+
//| Trade function |
//+------------------------------------------------------------------+
void OnTrade() {
//--- }
//+------------------------------------------------------------------+
//| TradeTransaction function |
//+------------------------------------------------------------------+
void OnTradeTransaction(const MqlTradeTransaction& trans, const MqlTradeRequest& request, const MqlTradeResult& result) {
//--- }
//+------------------------------------------------------------------+
//| Tester function |
//+------------------------------------------------------------------+
double OnTester() {
//--- double ret=0.0;
//--- //--- return(ret); }
//+------------------------------------------------------------------+
//| TesterInit function |
//+------------------------------------------------------------------+
void OnTesterInit() {
//--- }
//+------------------------------------------------------------------+
//| TesterPass function |
//+------------------------------------------------------------------+
void OnTesterPass() {
//--- }
//+------------------------------------------------------------------+
//| TesterDeinit function |
//+------------------------------------------------------------------+
void OnTesterDeinit() {
//--- }
//+------------------------------------------------------------------+
//| ChartEvent function |
//+------------------------------------------------------------------+
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) {
//--- }
//+------------------------------------------------------------------+
//| BookEvent function |
//+------------------------------------------------------------------+
void OnBookEvent(const string &symbol) {
//--- }
//+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+
Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur l’OBV
Apprenez à concevoir un système de trading basé sur l’OBV

Ceci est un nouvel article de notre série pour les débutants sur la façon de concevoir un système de trading basé sur certains des indicateurs les plus populaires. Nous apprendrons un nouvel indicateur qui est l’On Balance Volume (OBV), et nous apprendrons comment nous pouvons l'utiliser et concevoir un système de trading basé dessus.

احمد فايق المعيني
احمد فايق المعيني 2022.10.26
جيد محمد
Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur Le SAR Parabolique
Apprenez à concevoir un système de trading basé sur Le SAR Parabolique

Dans cet article, nous poursuivons notre série sur la conception d'un système de trading utilisant des indicateurs les plus populaires. Dans cet article, nous allons découvrir en détail l'indicateur SAR Parabolique, puis comment nous pouvons concevoir un système de trading à utiliser dans MetaTrader 5 en utilisant quelques stratégies simples.

Mohamed Abdelmaaboud
Article publié Apprendre à concevoir un système de trading basé sur l’ATR
Apprendre à concevoir un système de trading basé sur l’ATR

Dans cet article, nous allons découvrir un nouvel outil technique pouvant utilisé en trading, dans la continuité de la série dans laquelle nous apprenons à concevoir des systèmes de trading simples. Nous allons cette fois travailler avec un autre indicateur technique populaire : l’Average True Range (ATR).

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur l’ADX
Apprenez à concevoir un système de trading basé sur l’ADX

Dans cet article, nous poursuivons notre série sur la conception d'un système de trading en utilisant les indicateurs les plus populaires et nous parlerons de l'indicateur Average Directional Movement Index (ADX). Nous verrons cet indicateur en détail pour bien le comprendre et nous apprendrons comment l'utiliser à travers une stratégie simple. En apprenant quelque chose en détail, nous pouvons obtenir plus d'informations et nous pouvons mieux l'utiliser.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur le Stochastique
Apprenez à concevoir un système de trading basé sur le Stochastique

Dans cet article, nous poursuivons notre série d'apprentissage - cette fois, nous allons apprendre à concevoir un système de trading en utilisant l'un des indicateurs les plus populaires et les plus utiles, l'oscillateur stochastique, pour construire un nouveau bloc dans notre connaissance des bases.

Abdullah Alghamdi
Abdullah Alghamdi 2022.04.22
Thank you for amazing article 🙏 ❤️
Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur le MACD
Apprenez à concevoir un système de trading basé sur le MACD

Dans cet article, nous allons découvrir un nouvel outil dans notre série : nous allons apprendre à concevoir un système de trading basé sur l'un des indicateurs techniques les plus populaires, le Moving Average Convergence Divergence (MACD).

Mary Ann Thompson - MTTSoft
Mary Ann Thompson 2022.04.15
Please, article seems to be referring to beginners in programming.
Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading basé sur le Momentum
Apprenez à concevoir un système de trading basé sur le Momentum

Dans ce nouvel article de notre série sur la conception des systèmes de trading, je vais présenter le Commodities Channel Index (CCI), expliquer ses spécificités, et partager avec vous comment créer un système de trading basé sur cet indicateur.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading utilisant le Momentum
Apprenez à concevoir un système de trading utilisant le Momentum

Dans mon article précédent, j'ai mentionné l'importance d'identifier la tendance, donc la direction des prix. Dans cet article, je vais vous présenter l'un des concepts et des indicateurs les plus importants, à savoir l'indicateur Momentum. Je vais vous expliquer comment concevoir un système de trading basé sur l’indicateur Momentum.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading utilisant le RSI
Apprenez à concevoir un système de trading utilisant le RSI

Dans cet article, je vais partager avec vous l'un des indicateurs les plus populaires et les plus utilisés dans le monde du trading : le RSI. Vous apprendrez à concevoir un système de trading utilisant cet indicateur.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading avec les Enveloppes
Apprenez à concevoir un système de trading avec les Enveloppes

Dans cet article, je vais partager avec vous l'une des méthodes de trading avec les bandes. Cette fois, nous nous intéresserons aux enveloppes. Nous verrons à quel point il est facile de créer des stratégies de trading basées sur les enveloppes.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir un système de trading avec les Bandes de Bollinger
Apprenez à concevoir un système de trading avec les Bandes de Bollinger

Dans cet article, nous allons découvrir les Bandes de Bollinger, l'un des indicateurs les plus populaires dans le monde du trading. Nous allons considérer l'analyse technique et voir comment concevoir un système de trading algorithmique basé sur l'indicateur des Bandes de Bollinger.

Mohamed Abdelmaaboud
Article publié Apprenez à concevoir différents systèmes de Moyenne Mobile
Apprenez à concevoir différents systèmes de Moyenne Mobile

Il existe de nombreuses stratégies qui peuvent être utilisées pour filtrer les signaux générés en fonction de n'importe quelle stratégie, même en utilisant la moyenne mobile elle-même qui fait l'objet de cet article. Ainsi, l'objectif de cet article est de partager avec vous certaines des stratégies de moyenne mobile et comment concevoir un système de trading algorithmique.

Tasir .
Tasir . 2022.07.06
Sangat Bermanfaat. Terima kasih Bro untuk Berbagi Karya Anda
Mohamed Abdelmaaboud
Article publié Apprenez Pourquoi et Comment Concevoir Votre Système de Trading Algorithmique
Apprenez Pourquoi et Comment Concevoir Votre Système de Trading Algorithmique

Cet article montre les bases de MQL pour les débutants afin de concevoir leur système de trading algorithmique (Expert Advisor) en concevant un système de trading algorithmique simple après avoir mentionné quelques bases de MQL5

Captin Choi
Captin Choi 2022.07.28
감사합니다. 기초를 마련하는데 많은 도움 되었습니다.
Mohamed Abdelmaaboud
Mohamed Abdelmaaboud
Discipline is the main key to success, not only in trading but in everything in our life.
Mohamed Abdelmaaboud
Mohamed Abdelmaaboud
One of the greatest benefits of coding at trading, it helps to avoid the effect of emotions on trading and achieve discipline.