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 am looking to purchase a ready-made trading bot / Expert Advisor that is already developed, tested, and can be used immediately. Requirements: - Must have proven live results or verified backtest performance - Maximum drawdown around 3% - Target win rate / success rate of 60 - 70% - Strong and stable risk management - Must include Stop Loss, Take Profit, Breakeven, and Trailing Stop Trading Preference: - Preferably
I'll do as you say whenever someone need me I'll be the as a forex trader who want evert one to be profitable in the coming years.always pushing and giving others good
A market structure shift EA for volatility on deriv and gives a mobile alert... EA should also identify market structure shift only for spikes in boom and crash...Demo would be appreciated for quick selection
I am looking to purchase a ready-made trading bot / Expert Advisor that is already developed, tested, and can be used immediately. Requirements: Must have proven live or verified backtest results Maximum drawdown around 3% Target win rate / success rate of 80% to 90% Stable risk management, not martingale or high-risk gambling style Must include proper Stop Loss, Take Profit, Breakeven, and Trailing Stop Preferably
I am looking for someone who can create a Forex EA for the MT5 platform based solely on observing how the program works on the MT5 platform. I have login credentials to the platform where the robot is operating. My priority is to precisely copy the strategy. It is hedging strategy
FINAL EA STRATEGY DOCUMENT (Chandelier Exit + EMA Breakout System) ------------------------------------ CORE INDICATOR - Chandelier Exit (MAIN LOGIC) - ATR Period: Editable (Default 22) - ATR Multiplier: Editable (Default 3) IMPORTANT: - ATR must NOT be shown as a separate indicator - ATR must be used ONLY internally inside Chandelier Exit - All SL & trailing must strictly follow Chandelier Exit line
1. I will pay 3000+ USD (negotiable) for an EA for existing MT5 that generates a minimum of 5% or higher a month consistently (provide source code after final deal) 2. Looking for a highly profitable EA 3. Please send demo version directly subject (Buying profitable EA Budget up to $ 3000 USD), past results and optimal settings so I can test, if it performs in a strategy tester i will also need option to forward test
I have several strategies that I want to automate. However, I need to explain the strategies and discuss the next steps. I also want to have the source code so I can backtest the setup in my trading software. And if possible, a brief introduction on how it works. But we can discuss all of this when we start working together. About the strategy: 1. Basic logic: Single Prints Both visible Single Prints (classic peaks
Hello, I am looking for a professional developer to create an Expert Advisor (EA) for MT5 (MetaTrader 5). The strategy uses a combination of MACD and Bollinger Bands. Specifications: 1. Trading Pair: EURUSD 2. Indicators Settings: Bollinger Bands: Period 20, Deviation 2.000, Shift 0, Apply to Close. MACD: Fast EMA 89, Slow EMA 144, MACD SMA 5, Apply to Close. 3. Strategy Logic: SELL Condition: MACD Main line should
Darwish 30 - 100 USD
Hey, I want you to build an AI bot for buying and selling. I really like the structure and design of the information I sent you, so please use that as the base. I need the same logic and flow, but make sure it’s unique to me. The bot should handle buying and selling, and I want to control access most users get limited access, like one day, but I need a way to grant full, unlimited access if I choose. Don’t worry just

Información sobre el proyecto

Presupuesto
50+ USD