This commit is contained in:
2024-06-16 16:39:11 +03:30
parent 8eab3ef9b6
commit 3b7b3cd1cd
4 changed files with 1212 additions and 696 deletions
+101 -47
View File
@@ -48,29 +48,57 @@ input bool x121EAGetVerificationFromOtherTimeFrames = true; // Get Verifications
//
// Risk Management ...
input group "Risk Management";
input double x121EAVolume = 0.01; // Static Volume
input double x121EATPPoint = 500; // TP Point
input double x121EASLPoint = 500; // SL Point
input int x121EAMaxAllowedTrades = 1; // Max Allowed Positions
input bool x121EAIgnoreSL = false; // Ignore Calculated SL
input bool x121EAIgnoreTP = false; // Ignore Calculated TP
input bool x121EAAllowTrailStop = true; // Enable Trailling Stop Losses
input double x121EAFirstTrailDistance = 60; // Start Trailling Distance
input double x121EAFirstTrailPoint = 50; // First Stop Trail
input double x121EANextTrailDistance = 25; // Next Trailling Distance
input double x121EANextTrailPoint = 10; // Next Trailling Step
input bool x121EAAllowSupport = false; // Allow Support Signals
input bool x121EAAllowGrid = false; // Allow Grid Signals
input double x121EAGridDistance = 100; // Grid Distance
input double x121EAGridVolumeMultiplier = 2; // Grid Volume Multiplier
input bool x121EAAllowRecovery = false; // Allow Recovery Signals
input double x121EARecoveryDistance = 100; // Recovery Distance
input double x121EARecoveryVolumeMultiplier = 2; // Recovery Volume Multiplier
input double x121EAVolume = 0.01; // Static Volume
input double x121EATPPoint = 500; // TP Point
input double x121EASLPoint = 500; // SL Point
input int x121EAMaxAllowedTrades = 1; // Max Allowed Positions
input bool x121EAIgnoreSL = false; // Ignore Calculated SL
input bool x121EAIgnoreTP = false; // Ignore Calculated TP
//
// Protection ...
input group "Signalling";
input int x121EAStartSignallingHoure = -1; // Start Signalling at Specific Time
input int x121EAEndSignallingHoure = -1; // End Signalling at Specific Time
input int x121EACloseOnSpecificTime = -1; // Close All Trades in Specific Time
input bool x121EACloseOnOpposit = false; // Close all Positions on Opposit
//
input group "Trailling";
input bool x121EAAllowTrailStop = true; // Enable Trailling Stop Losses
input double x121EAFirstTrailDistance = 60; // Start Trailling Distance
input double x121EAFirstTrailPoint = 50; // First Stop Trail
input double x121EANextTrailDistance = 25; // Next Trailling Distance
input double x121EANextTrailPoint = 10; // Next Trailling Step
//
input group "Supporting";
input bool x121EAAllowSupport = false; // Allow Support Signals
input int x121EAMaxNumberOfSupports = 1; // Max Number of Support Signals
input double x121EASupportVolumeMultiplier = 2.0; // Support Signals Volume Multiplier
input double x121EAMaxAllowedSupportVolume = 0.8; // Max Allowed Support Signals Volume
//
input group "Grid";
input bool x121EAAllowGrid = false; // Allow Grid Signals
input int x121EAMaxNumberOfGrids = 5; // Max Number of Grid Signals
input double x121EAGridDistance = 100; // Grid Distance
input double x121EAGridVolumeMultiplier = 2.0; // Grid Volume Multiplier
input double x121EAMaxAllowedGridVolume = 0.8; // Max Allowed Grid Signals Volume
//
input group "Recovery";
input bool x121EAAllowRecovery = false; // Allow Recovery Signals
input int x121EAMaxNumberOfRecoveries = 2; // Max Number of Recovery Signals
input double x121EARecoveryDistance = 100; // Recovery Distance
input double x121EARecoveryVolumeMultiplier = 2; // Recovery Volume Multiplier
input double x121EAMaxAllowedRecoveryVolume = 0.8; // Max Allowed Recovery Signals Volume
//
input group "Hedging";
input int x121EARestingAfterHedge = 1000; // Resting Seconds After Hedge
input double x121EAMinRequiredProfitPerTrade = 0.5; // Minimum Required Profit for Hedging
input double x121EAMinRequiredProfitPerVolumeFactor = 0.01; // Minimum Required Profit for Hedging Per Volume
input int x121EARestingAfterHedge = 300; // Resting Seconds After Hedge
input int x121EACloseOnSpecificTime = -1; // Close All Trades in Specific Time
input bool x121EACloseOnOpposit = false; // Close all Positions on Opposit
//
// Alert ...
@@ -177,40 +205,36 @@ bool InitialEA()
);
//
// Configure EA ...
// Configure EA Class Instance ...
//
// Signals ...
x121EA.AllowLong(x121EAAllowLong);
x121EA.AllowShort(x121EAAllowShort);
x121EA.ReuiredSignalVerifications(x121EAReuiredSignalVerifications);
x121EA.GetVerificationFromOtherTimeFrames(x121EAGetVerificationFromOtherTimeFrames);
//
// Risk Management ...
x121EA.Volume(x121EAVolume);
x121EA.TPPoint(x121EATPPoint);
x121EA.SLPoint(x121EASLPoint);
x121EA.IgnoreSL(x121EAIgnoreSL);
x121EA.IgnoreTP(x121EAIgnoreTP);
x121EA.AllowLong(x121EAAllowLong);
x121EA.AllowShort(x121EAAllowShort);
x121EA.CloseOnOpposit(x121EACloseOnOpposit);
x121EA.MaxAllowedTrades(x121EAMaxAllowedTrades);
x121EA.RestingAfterHedge(x121EARestingAfterHedge);
//
// Protection ...
//
// Signalling ...
x121EA.CloseOnOpposit(x121EACloseOnOpposit);
x121EA.EndSignallingHoure(x121EAEndSignallingHoure);
x121EA.CloseOnSpecificTime(x121EACloseOnSpecificTime);
x121EA.MinRequiredProfitPerTrade(x121EAMinRequiredProfitPerTrade);
x121EA.ReuiredSignalVerifications(x121EAReuiredSignalVerifications);
x121EA.MinRequiredProfitPerVolumeFactor(x121EAMinRequiredProfitPerVolumeFactor);
x121EA.GetVerificationFromOtherTimeFrames(x121EAGetVerificationFromOtherTimeFrames);
x121EA.StartSignallingHoure(x121EAStartSignallingHoure);
//
x121EA.AllowSupport(x121EAAllowSupport);
//
// Grid System ...
x121EA.AllowGrid(x121EAAllowGrid);
x121EA.GridDistance(x121EAGridDistance);
x121EA.GridVolumeMultiplier(x121EAGridVolumeMultiplier);
//
// Recovery System ...
x121EA.AllowRecovery(x121EAAllowRecovery);
x121EA.RecoveryDistance(x121EARecoveryDistance);
x121EA.RecoveryVolumeMultiplier(x121EARecoveryVolumeMultiplier);
//
// Stop Loss Trailing ...
// Trailling ...
x121EA.AllowTrailStop(x121EAAllowTrailStop);
x121EA.NextTrailPoint(x121EANextTrailPoint);
x121EA.FirstTrailPoint(x121EAFirstTrailPoint);
@@ -218,7 +242,36 @@ bool InitialEA()
x121EA.FirstTrailDistance(x121EAFirstTrailDistance);
//
// Configure Alert ...
// Supporting ...
x121EA.AllowSupport(x121EAAllowSupport);
x121EA.MaxNumberOfSupports(x121EAMaxNumberOfSupports);
x121EA.SupportVolumeMultiplier(x121EASupportVolumeMultiplier);
x121EA.MaxAllowedSupportVolume(x121EAMaxAllowedSupportVolume);
//
// Grid ...
x121EA.AllowGrid(x121EAAllowGrid);
x121EA.GridDistance(x121EAGridDistance);
x121EA.MaxNumberOfGrids(x121EAMaxNumberOfGrids);
x121EA.GridVolumeMultiplier(x121EAGridVolumeMultiplier);
x121EA.MaxAllowedGridVolume(x121EAMaxAllowedGridVolume);
//
// Recovery ...
x121EA.AllowRecovery(x121EAAllowRecovery);
x121EA.RecoveryDistance(x121EARecoveryDistance);
x121EA.MaxNumberOfRecoveries(x121EAMaxNumberOfRecoveries);
x121EA.RecoveryVolumeMultiplier(x121EARecoveryVolumeMultiplier);
x121EA.MaxAllowedRecoveryVolume(x121EAMaxAllowedRecoveryVolume);
//
// Hedging ...
x121EA.RestingAfterHedge(x121EARestingAfterHedge);
x121EA.MinRequiredProfitPerTrade(x121EAMinRequiredProfitPerTrade);
x121EA.MinRequiredProfitPerVolumeFactor(x121EAMinRequiredProfitPerVolumeFactor);
//
// Alert ...
x121EA.SetAlertPrefix(ShortName);
x121EA.SetAlertEnableAlerts(x121EAEnableAlerts);
x121EA.SetAlertLogAlerts(x121EALogAlerts);
@@ -227,6 +280,7 @@ bool InitialEA()
x121EA.SetAlertTerminalAlerts(x121EATerminalAlerts);
//
// Configure Indicators ...
X121SetupInputs setupInputsDefault;
setupInputsDefault.Default();