Currency Strength Lines

Which version of the CSL are you using? 1.19?
My guess would be that there is some mismatch in chart data for XAUUSD - e.g., all H4 bars start a different time than H4 bars for normal currency pairs.
Yes, version 1.19. Is there any way to fix it?
 
The source code is full of errors and won't compile. It also comments out the included header files by default. Can someone please fix the source code so that it actually compiles?
 
The source code is full of errors and won't compile. It also comments out the included header files by default. Can someone please fix the source code so that it actually compiles?
There shouldn't be any compilation errors as long as you follow the provided installation instructions. Are you doing this on MT4 or MT5? What is the top-most error when you compile?
 
There shouldn't be any compilation errors as long as you follow the provided installation instructions. Are you doing this on MT4 or MT5? What is the top-most error when you compile?
OK, I closed my MT5 instance restarted the computer and tried again. This time it compiled.
 
You recently updated your float indicator so that the Di Napoli and Fibonacci lines could be used with eabuilder.com. Can you do the same for the lines, base and quote currency with this indicator and the same with the currency strength matrix?
 
You recently updated your float indicator so that the Di Napoli and Fibonacci lines could be used with eabuilder.com. Can you do the same for the lines, base and quote currency with this indicator and the same with the currency strength matrix?
Not sure what you would like me to add for the Currency Strength Lines indicator. All the line values are already in the buffers.
 
I can't use the base, quote, or 8 major currencies to set trade conditions i.e. base is <>=etc. quote or one of the 8 majors. I can't use the change in money flow following a news release to set a directional bias, or add it to other trade conditions. I can do that with the Fibonacci and DiNapoli lines in your new float indicator though. I'd like to be able to do the same with the currency strength matrix. In the screenshot you will see that neither the currency strength lines nor the currency strength matrix have the drop down menu that lists the currencies but the float indicator does. I need the same drop down menu for the base, quote, and 8 major currencies in the currency strength lines indicator and currency strength matrix indicator.
 

Attachments

  • Screenshot 2025-04-30 093853.png
    Screenshot 2025-04-30 093853.png
    465.4 KB · Views: 5
  • Screenshot 2025-04-30 094239.png
    Screenshot 2025-04-30 094239.png
    456.5 KB · Views: 5
I can't use the base, quote, or 8 major currencies to set trade conditions i.e. base is <>=etc. quote or one of the 8 majors. I can't use the change in money flow following a news release to set a directional bias, or add it to other trade conditions. I can do that with the Fibonacci and DiNapoli lines in your new float indicator though. I'd like to be able to do the same with the currency strength matrix. In the screenshot you will see that neither the currency strength lines nor the currency strength matrix have the drop down menu that lists the currencies but the float indicator does. I need the same drop down menu for the base, quote, and 8 major currencies in the currency strength lines indicator and currency strength matrix indicator.
Sorry, but I have no idea what that screenshot shows. This indicator has currency strength values for all involved currencies as output buffers.
 
Sorry, but I have no idea what that screenshot shows. This indicator has currency strength values for all involved currencies as output buffers.
It's a screenshot of the options available to use for setting trade conditions. There is some difference between then way the base, quote, and 8 majors are written from how the float indicator's Fibonacci and DiNapoli lines are written. Maybe it's doubles, buffer, or more being in the float code for those aspects and not for the base, quote, and 8 majors for the currency strength lines and matrix but that dropdown menu is what I would need to show up for the currency strength lines and matrix.
 
Currency Strength Lines updated to version 1.20 to add a new calculation method and fix some bugs:
  • Added Stochastic method for currency strength calculation.
  • Fixed the delay in object removal after detaching the indicator in MT5.
  • Fixed a bug that prevented user-defined indicator levels from working. (@Zoran10)
  • Improved input parameter descriptions.
 
This is the segment of the Float code from your website.:
#property copyright "Copyright © 2025, EarnForex"
#property link "https://www.earnforex.com/indicators/Float/"
#property version "1.03"

#property description "Float - Trend strength, volume, Fibonacci and Dinapoli levels."

#property indicator_separate_window
#property indicator_buffers 31
#property indicator_plots 31

#property indicator_color1 clrBlue
#property indicator_type1 DRAW_HISTOGRAM
#property indicator_width1 1
#property indicator_label1 "Float Histogram"
#property indicator_color2 clrRed
#property indicator_type2 DRAW_LINE
#property indicator_style2 STYLE_SOLID
#property indicator_width2 1
#property indicator_label2 "Float Line"
#property indicator_type3 DRAW_NONE // Swing Top (price)
#property indicator_type4 DRAW_NONE // Swing Bottom (price)
#property indicator_type5 DRAW_NONE // High Distance (bars)
#property indicator_type6 DRAW_NONE // Low Distance (bars)
#property indicator_type7 DRAW_NONE // Swing Time (bars)
#property indicator_type8 DRAW_NONE // Float Volume (volume)
#property indicator_type9 DRAW_NONE // Float Left (volume)
#property indicator_type10 DRAW_NONE // Fibo23 (price)
#property indicator_type11 DRAW_NONE // Fibo38 (price)
#property indicator_type12 DRAW_NONE // Fibo50 (price)
#property indicator_type13 DRAW_NONE // Fibo62 (price)
#property indicator_type14 DRAW_NONE // Fibo76 (price)
#property indicator_type15 DRAW_NONE // Dinap0 (price)
#property indicator_type16 DRAW_NONE // Dinap1 (price)
#property indicator_type17 DRAW_NONE // Dinap2 (price)
#property indicator_type18 DRAW_NONE // Dinap3 (price)
#property indicator_type19 DRAW_NONE // Dinap4 (price)
#property indicator_type20 DRAW_NONE // Dinap5 (price)
#property indicator_type21 DRAW_NONE // CVSTART (datetime)
#property indicator_type22 DRAW_NONE // CVEND (datetime)
#property indicator_type23 DRAW_NONE // SwingEnd1 (datetime)
#property indicator_type24 DRAW_NONE // SwingEnd2 (datetime)
#property indicator_type25 DRAW_NONE // SwingEnd3 (datetime)
#property indicator_type26 DRAW_NONE // SwingEnd4 (datetime)
#property indicator_type27 DRAW_NONE // SwingEnd5 (datetime)
#property indicator_type28 DRAW_NONE // SwingEnd6 (datetime)
#property indicator_type29 DRAW_NONE // SwingEnd7 (datetime)
#property indicator_type30 DRAW_NONE // SwingEnd8 (datetime)
#property indicator_type31 DRAW_NONE // SwingEnd9 (datetime)


input int Float = 200;
input string ObjectPrefix = "FI-";
input bool DisableDinapoli = false;
input bool DisableFibonacci = false;
input bool DrawVerticalLinesAsBackground = false;
input color SwingBorderColor = clrBlue;
input int SwingBorderWidth = 1;
input ENUM_LINE_STYLE SwingBorderStyle = STYLE_SOLID;
input color SwingLinesColor = clrRed;
input int SwingLinesWidth = 1;
input ENUM_LINE_STYLE SwingLinesStyle = STYLE_DOT;
input color FiboColor = clrGreen;
input int FiboWidth = 1;
input ENUM_LINE_STYLE FiboStyle = STYLE_DASH;
input color DinapoliColor = clrRed;
input int DinapoliWidth = 1;
input ENUM_LINE_STYLE DinapoliStyle = STYLE_DOT;

datetime PrevTime;
double Histogram[];
double Line[];

double bufSwingTop[], bufSwingBottom[];
double bufHighDistance[], bufLowDistance[], bufSwingTime[], bufFloatVolume[], bufFloatLeft[]; // int actually.

double bufFibo23[], bufFibo38[], bufFibo50[], bufFibo62[], bufFibo76[];
double bufDinap0[], bufDinap1[], bufDinap2[], bufDinap3[], bufDinap4[], bufDinap5[];

double bufCVSTART[], bufCVEND[], bufSwingEnd1[], bufSwingEnd2[], bufSwingEnd3[], bufSwingEnd4[], bufSwingEnd5[], bufSwingEnd6[], bufSwingEnd7[], bufSwingEnd8[], bufSwingEnd9[]; // datetime actually.

void OnInit()

Everything from the Histogram to the SwingEnd9 shows up on the eabuilder site in the dropdown menu that I can use to set trade conditions.

This is a segment of the currency strength indicator from your website.:

#property copyright "EarnForex.com - 2019-2025"
#property description "This indicator analyses the strength of a currency and its trend"
#property description "comparing different values across multiple pairs."
#property description " "
#property description "WARNING : You use this software at your own risk."
#property description "The creator of these plugins cannot be held responsible for damage or loss."
#property description " "
#property description "Find more on www.EarnForex.com"
#property icon "\\Files\\EF-Icon-64x64px.ico"

#include <MQLTA ErrorHandling.mqh>
#include <MQLTA Utils.mqh>

#property indicator_separate_window
#property indicator_buffers 8
#property indicator_plots 8
#property indicator_color1 clrBlue
#property indicator_color2 clrRed
#property indicator_color3 clrDeepSkyBlue
#property indicator_color4 clrMagenta
#property indicator_color5 clrLightSalmon
#property indicator_color6 clrPurple
#property indicator_color7 clrDarkGreen
#property indicator_color8 clrSpringGreen
#property indicator_width1 1
#property indicator_width2 1
#property indicator_width3 1
#property indicator_width4 1
#property indicator_width5 1
#property indicator_width6 1
#property indicator_width7 1
#property indicator_width8 1
#property indicator_type1 DRAW_LINE
#property indicator_type2 DRAW_LINE
#property indicator_type3 DRAW_LINE
#property indicator_type4 DRAW_LINE
#property indicator_type5 DRAW_LINE
#property indicator_type6 DRAW_LINE
#property indicator_type7 DRAW_LINE
#property indicator_type8 DRAW_LINE
#property indicator_level1 DRAW_LINE
#property indicator_level1 0
#property indicator_levelstyle STYLE_DOT
#property indicator_levelcolor clrGray

enum Enum_CalculationMode
{
Mode_ASITot, //ASI TOT
Mode_ASITotMA, //ASI TOT MA
Mode_ROC, //ROC TOT
Mode_ROCMA, //ROC TOT MA
Mode_Stoch_Main, //Stochastic Main
Mode_Stoch_Sig, //Stochastic Signal
};

enum ENUM_ZONETYPE
{
ZONE_BUY = 1, //BUY ZONE
ZONE_SELL = 2, //SELL ZONE
ZONE_NEUTRAL = 3, //NEUTRAL ZONE
};

enum ENUM_CORNER
{
TopLeft = CORNER_LEFT_UPPER, //TOP LEFT
TopRight = CORNER_RIGHT_UPPER, //TOP RIGHT
BottomLeft = CORNER_LEFT_LOWER, //BOTTOM LEFT
BottomRight = CORNER_RIGHT_LOWER, //BOTTOM RIGHT
};

enum enum_candle_to_check
{
Current,
Previous
};

input string IndicatorName = "MQLTA-CSL"; // Indicator's Name

input group "Calculation"
input Enum_CalculationMode CalculationMode = Mode_ASITot; // Calculation Mode
input int ROCPeriod = 5; // ROC Period (if using ROC Mode)
input int RSIPeriod = 14; // ASI Period
input int SmoothingPeriod = 5; // Smoothing (if using TOT MA)
input int Stochastic_K_Period = 5; // Stochastic %K Period
input int Stochastic_D_Period = 3; // Stochastic %D Period
input int Stochastic_Slowing = 3; // Stochastic Slowing
input ENUM_TIMEFRAMES LinesTimeFrame = PERIOD_CURRENT; // Strength Lines Time Frame

input group "Arrows"
input bool DrawAllCurrencies = false; // Draw All Currency Strength
input bool ShowSignals = true; // Show Arrow Signals
input bool AboveBelow = true; // Draw when a currency is above the other
input bool OppositeZeros = false; // Draw if lines are opposite to the zero

input color BuyColor = clrGreen; // Buy signal color
input color SellColor = clrRed; // Sell signal color
input color NeutralColor = clrDimGray; // Neutral signal color

input group "Notifications"
input bool EnableNotify = false; // Enable Notifications feature
input bool SendAlert = true; // Send Alert Notification
input bool SendApp = false; // Send Notification to Mobile
input bool SendEmail = false; // Send Notification via Email
input enum_candle_to_check TriggerCandle = Previous;

input group "Performance"
bool LimitBars = true; // Limit the number of bars to calculate
input int MaxBars = 1000; // Number of bars to calculate
input int MinimumRefreshInterval = 5; // Minimum Refresh Interval (Seconds)

input group "Prefix and suffix"
input string CurrencyPrefix = ""; // Pairs Prefix
input string CurrencySuffix = ""; // Pairs Suffix

input group "Currencies to analyze"
bool UseEUR = true; // EUR
bool UseUSD = true; // USD
bool UseGBP = true; // GBP
bool UseJPY = true; // JPY
bool UseAUD = true; // AUD
bool UseNZD = true; // NZD
bool UseCAD = true; // CAD
bool UseCHF = true; // CHF

input group "Colors and width"
input ENUM_CORNER Corner = TopLeft; // Corner to show the labels
input int XOffset = 0; // Horizontal offset (pixels)
input int YOffset = 0; // Vertical offset (pixels)
input color LabelColor = clrBlack; // Label Color
input color EURColor = clrBlue; // EUR
input color USDColor = clrRed; // USD
input color GBPColor = clrDeepSkyBlue; // GBP
input color JPYColor = clrMagenta; // JPY
input color AUDColor = clrLightSalmon; // AUD
input color NZDColor = clrPurple; // NZD
input color CADColor = clrDarkGreen; // CAD
input color CHFColor = clrMediumSeaGreen; // CHF
input int NormalWidth = 1; // Width for Currencies not on chart
input int SelectedWidth = 3; // Width for Currencies on chart
input group "Miscellaneous"
input bool ErrorLog = false; // Enable Verbose Logging
input bool DrawPanel = true; // Draw Panel

string Font = "Consolas";

// Indicator buffers
double EUR[];
double USD[];
double GBP[];
double JPY[];
double AUD[];
double NZD[];
double CAD[];
double CHF[];

double PreChecks = false;

string AllPairs[] =

None of the individual currencies, or a base and quote option show up in the dropdown menu for the eabuilder website for me to use to set trade conditions. I'm not sure what the difference is in the wording or phrasing of these two codes are that prevent me from using the aforementioned options in the currency strength lines indicator but I'm hoping that you do. I thought maybe the options I am requesting are not worded/ labeled as doubles or buffers :
datetime PrevTime;
double Histogram[];
double Line[];
double bufSwingTop[], bufSwingBottom[];
double bufHighDistance[], bufLowDistance[], bufSwingTime[], bufFloatVolume[], bufFloatLeft[]; // int actually.
double bufFibo23[], bufFibo38[], bufFibo50[], bufFibo62[], bufFibo76[];
double bufDinap0[], bufDinap1[], bufDinap2[], bufDinap3[], bufDinap4[], bufDinap5[];
double bufCVSTART[], bufCVEND[], bufSwingEnd1[], bufSwingEnd2[], bufSwingEnd3[], bufSwingEnd4[], bufSwingEnd5[], bufSwingEnd6[], bufSwingEnd7[], bufSwingEnd8[], bufSwingEnd9[]; // datetime actually.

VS.

input group "Currencies to analyze"
bool UseEUR = true; // EUR
bool UseUSD = true; // USD
bool UseGBP = true; // GBP
bool UseJPY = true; // JPY
bool UseAUD = true; // AUD
bool UseNZD = true; // NZD
bool UseCAD = true; // CAD
bool UseCHF = true; // CHF

// Indicator buffers
double EUR[];
double USD[];
double GBP[];
double JPY[];
double AUD[];
double NZD[];
double CAD[];
double CHF[];

What am I not seeing? What has to change in the code so I can use the currency strength indicator on the eabuilder website.