Display VaR per Symbol as opposed to the Entire Portfolio

MQL5 Indicadores Asesores Expertos

Trabajo finalizado

Plazo de ejecución 11 días
Comentario del Cliente
Was flexible and able to solve a difficult task. I appreciate his patience and hard work throughout this project :)
Comentario del Ejecutor
Super client

Tarea técnica

The code that has been provided calculates the value at risk for the entire portfolio (opened trades on MT5). I would like to understand what this comprises of on a per Symbol basis.


1) Calculate the Value at Risk for Each of the 10 Symbols (for Buy & Sells) and then for the Whole Symbol:

Line 51 of Account Manager Part 1:

input    string      CHART_MANAGEMNET1= "====== CHART MANAGEMENT ======";
input    string      symbol1          = "US30";      // Symbol - Other
input    string      symbol2          = "XAUUSD";    // Symbol 2 - Other
input    string      symbol3          = "AUDCAD";    // Symbol 3 - Forex
input    string      symbol4          = "AUDUSD";    // Symbol 4 - Forex
input    string      symbol5          = "AUDNZD";    // Symbol 5 - Forex
input    string      symbol6          = "EURUSD";    // Symbol 6 - Forex
input    string      symbol7          = "EURGBP";    // Symbol 7 - Forex
input    string      symbol8          = "USDCHF";    // Symbol 8 - Forex
input    string      symbol9          = "USDCAD";    // Symbol 9 - Forex
input    string      symbol10          = "GBPCHF";    // Symbol 10 - Forex

Suggested Process:

  //Calculate the Value at Risk for Buy & Sell Side - Note Repeat Process fro Symbols 2 - 10
  /*
  double ValueAtRiskB1
  double ValueAtRiskS1
  
  //Used to Calculate the Total Value at Risk of the Symbol - Note Repeat the Process for Symbols 2 - 10
 if((ValueAtRiskB1 - ValueAtRiskS1) > 0)
   {
   double ValueAtRisk1 = (ValueAtRiskB1 - ValueAtRiskS1)
   }
   else
   {
   double ValueAtRisk1 = (ValueAtRiskB1 - ValueAtRiskS1)*-1
   }
   


2) Show the Relevant Weightings of the Currently Open Trades (in terms of Value at Risk):

Divide the current Value at Risk of the Symbol by the Total Value at Risk & Convert to a Percentage

Line 173 of Account Manager Part 1

  // Portfolio Weighting 
  double Weighting1 = ValueAtRisk1/currValueAtRisk
  double Weighting2 = ValueAtRisk2/currValueAtRisk
  double Weighting3 = ValueAtRisk3/currValueAtRisk
  double Weighting4 = ValueAtRisk4/currValueAtRisk
  double Weighting5 = ValueAtRisk5/currValueAtRisk
  double Weighting6 = ValueAtRisk6/currValueAtRisk
  double Weighting7 = ValueAtRisk7/currValueAtRisk
  double Weighting8 = ValueAtRisk8/currValueAtRisk
  double Weighting9 = ValueAtRisk9/currValueAtRisk
  double Weighting10 = ValueAtRisk10/currValueAtRisk

3) Display Information in Dashboard:

            Comment(
   "  RISK MANAGEMENT:  ", "\n\n",
   "Symbol 1: VaR: " + DoubleToString(ValueAtRisk1, 2) + "Weighting:" + DoubleToString(Weighting1, 2) + "\n\n",
   "Symbol 2: VaR: " + DoubleToString(ValueAtRisk2, 2) + "Weighting:" + DoubleToString(Weighting2, 2) + "\n\n",
   "Symbol 3: VaR: " + DoubleToString(ValueAtRisk3, 2) + "Weighting:" + DoubleToString(Weighting3, 2) + "\n\n",
   "Symbol 4: VaR: " + DoubleToString(ValueAtRisk4, 2) + "Weighting:" + DoubleToString(Weighting4, 2) + "\n\n",
   "Symbol 5: VaR: " + DoubleToString(ValueAtRisk5, 2) + "Weighting:" + DoubleToString(Weighting5, 2) + "\n\n",
   "Symbol 6: VaR: " + DoubleToString(ValueAtRisk6, 2) + "Weighting:" + DoubleToString(Weighting6, 2) + "\n\n",
   "Symbol 7: VaR: " + DoubleToString(ValueAtRisk7, 2) + "Weighting:" + DoubleToString(Weighting7, 2) + "\n\n",
   "Symbol 8: VaR: " + DoubleToString(ValueAtRisk8, 2) + "Weighting:" + DoubleToString(Weighting8, 2) + "\n\n",
   "Symbol 9: VaR: " + DoubleToString(ValueAtRisk9, 2) + "Weighting:" + DoubleToString(Weighting9, 2) + "\n\n",
   "Symbol 10: VaR: " + DoubleToString(ValueAtRisk10, 2) + "Weighting:" + DoubleToString(Weighting10, 2) + "\n\n",
   "Total Value at Risk: $" + DoubleToString(currValueAtRisk, 2) + "\n\n", 
   "Standard Deviation: " + DoubleToString(currportfolioStdDev, 6) + "\n\n"  
   
   );


Note: Account Manager Part 2 - will likely need to be adapted. To fetch values from it make these values a double in the following code (this worked beforehand).


class CPortfolioRiskMan
{
   public:   
      double portfolioStdDev;
      double MultiPositionVaR;


Make sure to add the MPH file in the includes folder for decompiling.



Han respondido

1
Desarrollador 1
Evaluación
(16)
Proyectos
35
23%
Arbitraje
4
0% / 50%
Caducado
2
6%
Trabaja
2
Desarrollador 2
Evaluación
(7)
Proyectos
7
29%
Arbitraje
3
0% / 100%
Caducado
1
14%
Libre
Solicitudes similares
I need a mt5 Expert advisor ea to manage intraday trades with strict risk management. The EA must -Handle between 5 to 8 clean trades a day max altogether throughout all 3 sessions. no big news trading times and no overnight trades -Use 1% on forex pairs and upto 2% on XAUUSD risk per trade - Automatically calculate lot size based on stop loss -use fixed RR ratio [1:2] For forex pairs, the stop loss should be
I need a clean, bug-free MT5 Expert Advisor (MQL5) based on this exact mechanical scalping strategy on M5 timeframe for EURUSD. Indicators (built-in): - EMA 9 and EMA 21 on M5 - RSI 14 - ADX 14 (>25 for strong trend) - H1 EMA 21 above/below H1 EMA 9 for trend alignment Entry Rules (ALL must be true): BUY: EMA9 crosses above EMA21 (on closed bar) + RSI > 50 + ADX > 25 + H1 EMA21 > H1 EMA9 SELL: Mirror (cross below
I will like to purchase tradingview strategy with high winning rate, i mean already made, tested and trusted and powerful strategy, i have tried to code my own strategy with lot of freelancers but nothing to me i am just wasting money, i have wasted lot of money already, so i need a high winning rate tradingview strategy, we can discuss price in chat, I will need to see some test result as well
Looking to acquire a good MT5 based EA that works on Gold, forex pairs or BTC. Must be suitable for current market conditions and profitable in backtests. Suitable on 1 Min timeframe to be used on, Must be actively opening many positions throughout the day. Share me the details if this matches something you have or developed. Looking to get this finalised within the weekend
Pakayaku Robot Trading 30 - 200 USD
Revolusi Trading BTCUSD dengan Presisi Fibonacci & Ichimoku Kumo "Memperkenalkan Pakayaku Robot Trading , asisten cerdas yang dirancang khusus untuk menaklukkan pasar emas (XAUUSD) dan Bitcoin (BTCUSD). Menggabungkan algoritma Fibonacci Retracement untuk akurasi titik pantul dan Ichimoku Kumo sebagai filter tren global. Mengapa Memilih Pakayaku? Analisa Multi-Indikator: Menggabungkan Fibonacci, Ichimoku, dan
I’m looking to purchase an existing high-risk Expert Advisor (EA) for MT5. This is NOT a low-risk or conservative system. I am specifically looking for a high-risk, aggressive strategy such as: Martingale Grid trading High-frequency / high-leverage systems Objective: The goal of this EA is simple: Achieve extremely high returns (e.g. 100% in a day) I fully understand and accept the risk of losing the entire capital
READ BEFORE MESSAGING PLEASE Developer Requirements (Strict): - Expert Level Only: This is a professional-grade, robust trading engine. Please do not apply if you are a beginner or intermediate developer. ​ - Asynchronous Proficiency: You must have deep experience with CTrade and handling asynchronous order execution (Requotes, Busy Servers, and Order Integrity Sync). ​ - Proven Track Record: I require a developer
buy condition when blue color appears sell condition when yellow color appears close all buys when there is a sell order close all sells when there is a buy order
I need a MetaTrader 5 Expert Advisor for XAUUSD. Trend Filter : Trade only in the direction of the main trend. Patterns (Buy) : Hammer, Inverted Hammer, Doji, Bullish Harami, Bullish Engulfing + Green confirmation candle close above high. Patterns (Sell) : Shooting Star, Doji, Bearish Harami, Bearish Engulfing + Red confirmation candle close below low. Entry Rule : Wait for one Pullback candle (Red for Buy, Green for
Mass Positions Adder 30 - 50 USD
I am looking for MT4 EA for a task of automated opening of my defined quantity of active market order positions based on many different complex and very detailed rules and features. Quantity of active market order positions to be opened must match my defined value which can be just about anything. Several functionality features, very detailed ones, are to be implemented. Kindly check attached zip file with

Información sobre el proyecto

Presupuesto
50+ USD