Yalnızca ürünü satın alan veya kiralayan kullanıcılar yorum yazabilir
Michael Dolgushin  

Your Questions, Comments & Suggestions Are Welcome!

Michael Dolgushin  

An expert advisor based on the multicurrency indicator ICI_v2. Analyzes dynamics across a group of currency pairs to determine base currency strength and automatically executes trades.

Key Features:

  1. Multicurrency Analysis: Processes multiple currency pairs simultaneously
  2. Indicator-Based: Uses custom indicator ICI_v2 to calculate normalized currency strength values
  3. Trading Mechanism:
    • Netting system (1 position per instrument)
    • Position volume proportional to currency strength
    • Partial position closing
    • Automatic rebalancing
  4. Visualization: Displays currency data table in chart comments

Main Parameters:

  • Traded pairs: EURUSD, GBPUSD, AUDUSD, NZDUSD, USDCAD, USDCHF, USDJPY
  • Base currency: USD
  • MA Periods: Fast (4), Slow (24)
  • MA Type: Exponential (EMA)
  • Min-Max Normalization
  • Power Normalization
  • Neutral zone for currency strength

Core Function: CalculateCurrencyStrength()

Calculates relative currency strength based on the dynamics of their indicator values.

Algorithm:
  1. Collect unique currencies:

    string currencies[]; 
    for(each element in symbolData)
     { if currency not in currencies array → add it }
  2. Pairwise currency comparison:

    for(each currency A in currencies)
     { for(each currency B in currencies)
     { if A == B → skip // Calculate value differences over 3 periods
     double diff0 = A[0] - B[0];
     // Current value 
     double diff1 = A[1] - B[1];
     // Previous value double
     diff2 = A[2] - B[2];
     // Value from 2 periods back } }
  3. Determine trend direction:

    double change = 0;
    if(diff0 > diff1) change += 1;
    // Strengthening of A vs B 
    if(diff1 > diff2) change += 1;
    // Confirmation of strengthening
    if(diff0 < diff1) change -= 1;
    // Weakening of A vs B
    if(diff1 < diff2) change -= 1; // Confirmation of weakening
  4. Accumulate currency strength:

    symbolData[A].strenght += change;

  5. Adjust relative to base currency:

    if(DiffMajor == true) 
    { for(each currency except base) 
      { currency_strength = currency_strength - USD_strength } }
Key Calculation Features:
  1. Trend Comparison: Analyzes value dynamics over 3 consecutive periods
  2. Pairwise Method: Each currency compared against all others
  3. Scoring System:
    • +1 point for each relative strengthening
    • -1 point for each relative weakening
  4. Relative Strength: Final score = sum of all comparison results
Result Visualization:
Currency | Current | Previous | Prev-2 | Symbol | Strength
------------------------------------------------------
USD | 1.1234 | 1.1200 | 1.1190 | USD | 0.00
EUR | 1.1345 | 1.1300 | 1.1280 | EURUSD | 2.50
GBP | 1.2567 | 1.2500 | 1.2450 | GBPUSD | 1.80
...
Significance for Trading Logic:

Calculated strength directly determines:

  • Trade direction (buy/sell)
  • Position volume
  • Rebalancing necessity
  • Position closing timing

Transforms raw indicator data into actionable trading signals.

Dosyalar:
Michael Dolgushin  

This implementation represents the basic integration layer of the indicator within the trading system. Given sufficient community interest in the ICI_v2 indicator, I will publish enhanced versions of the expert advisor featuring improved algorithms for:

  • Trading signal detection

  • Capital management

  • Adaptive trading strategies