463 lines
21 KiB
Plaintext
463 lines
21 KiB
Plaintext
///////////////////////////////////////////////////////
|
|
//
|
|
// SaherElm IT Center MQL5 Strategy Parser Library
|
|
// ------------------------------------------------
|
|
// Name: XCHICHWapStartegyConditionsParser
|
|
// Description: provide all conditions parsing
|
|
// for XCH Strategy ...
|
|
//
|
|
//
|
|
// Maintainer:
|
|
// ------------
|
|
// Hadi Khazaee Asl (hadi_khazaee_asl@yahoo.com)
|
|
//
|
|
//////////////////////////////////////////////////////
|
|
//
|
|
// Global Properties ...
|
|
#property library
|
|
#property copyright "Copyright 2023, SaherElm IT Center"
|
|
#property link "https://www.saherelm.ir"
|
|
#property version "1.00"
|
|
#property strict
|
|
|
|
//
|
|
// Imports ...
|
|
#include "../../../../Strategies/x-saherelm.xch.ichwap.strategy.mq5"
|
|
|
|
//
|
|
// Conditions Parser ...
|
|
struct XCHICHWAPStartegyAMarketsEURNZD2022LongConditionsParser
|
|
{
|
|
//
|
|
string _version;
|
|
|
|
//
|
|
bool IsFiltered(
|
|
XCHStrategyConditions &conditions //
|
|
)
|
|
{
|
|
//
|
|
bool result = false;
|
|
|
|
//
|
|
result =
|
|
//
|
|
(
|
|
// Symbol: EURNZDb
|
|
// ---------------
|
|
// Scores:
|
|
// ---------------
|
|
// Bullish: 60.0
|
|
// Bearish: 3.0
|
|
// ---------------
|
|
// Time: 2022.03.08 20:20:00
|
|
// ---------------
|
|
//
|
|
// XPV ...
|
|
//
|
|
conditions.pvConditions.isCloseOverFib1 &&
|
|
conditions.pvConditions.isCloseOverFib2 &&
|
|
conditions.pvConditions.isCloseOverFib3 &&
|
|
conditions.pvConditions.isCloseOverFib4 &&
|
|
conditions.pvConditions.isCloseOverFib5 &&
|
|
conditions.pvConditions.isSCLLBullish &&
|
|
conditions.pvConditions.isSCSwitchedToBullish &&
|
|
conditions.pvConditions.isSCLLSwitchedToBullish &&
|
|
conditions.pvConditions.isMCLLBullish &&
|
|
//
|
|
// XCHM ...
|
|
//
|
|
conditions.chmConditions.hasBullishPower &&
|
|
conditions.chmConditions.isBullishPowerIncreasing &&
|
|
conditions.chmConditions.isBearishPowerDecreasing &&
|
|
conditions.chmConditions.isFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverFast &&
|
|
conditions.chmConditions.isCFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverCFast &&
|
|
conditions.chmConditions.isSFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverSFast &&
|
|
conditions.chmConditions.isMFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverMFast &&
|
|
conditions.chmConditions.isLFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverLFast &&
|
|
conditions.chmConditions.isHFastUnderSlow &&
|
|
conditions.chmConditions.isClosedOverHFast &&
|
|
//
|
|
// XCHHK ...
|
|
//
|
|
conditions.chhkConditions.hasBullishPower &&
|
|
conditions.chhkConditions.isCBullish &&
|
|
conditions.chhkConditions.isCloseOverCHigh &&
|
|
conditions.chhkConditions.isSBullish &&
|
|
conditions.chhkConditions.isCloseOverSHigh &&
|
|
conditions.chhkConditions.isMBullish &&
|
|
conditions.chhkConditions.isCloseOverMHigh &&
|
|
conditions.chhkConditions.isLBullish &&
|
|
conditions.chhkConditions.isCloseOverLHigh &&
|
|
conditions.chhkConditions.isHBullish &&
|
|
conditions.chhkConditions.isCloseOverHHigh &&
|
|
//
|
|
// XCHTD ...
|
|
//
|
|
conditions.chtdConditions.hasBullishPower &&
|
|
conditions.chtdConditions.isCBullish &&
|
|
conditions.chtdConditions.isSBullish &&
|
|
conditions.chtdConditions.isMBullish &&
|
|
conditions.chtdConditions.isLBullish &&
|
|
conditions.chtdConditions.isHBearish &&
|
|
//
|
|
// XCHICHWAP ...
|
|
//
|
|
conditions.chcheConditions.hasBullishPower &&
|
|
conditions.chcheConditions.isCBullish &&
|
|
conditions.chcheConditions.isCStrongBullish &&
|
|
conditions.chcheConditions.isSBullish &&
|
|
conditions.chcheConditions.isSStrongBullish &&
|
|
conditions.chcheConditions.isMBullish &&
|
|
conditions.chcheConditions.isMStrongBullish &&
|
|
conditions.chcheConditions.isLBullish &&
|
|
conditions.chcheConditions.isLStrongBullish &&
|
|
conditions.chcheConditions.isHBullish &&
|
|
conditions.chcheConditions.isHStrongBullish &&
|
|
//
|
|
// XCHSTR ...
|
|
//
|
|
conditions.chstrConditions.hasBullishPower &&
|
|
conditions.chstrConditions.isCBullish &&
|
|
conditions.chstrConditions.isSBullish &&
|
|
conditions.chstrConditions.isMBullish &&
|
|
conditions.chstrConditions.isLBullish &&
|
|
conditions.chstrConditions.isHBullish &&
|
|
//
|
|
// XCHVLM ...
|
|
//
|
|
conditions.chvlmConditions.hasBullishPower &&
|
|
conditions.chvlmConditions.isCBullish &&
|
|
conditions.chvlmConditions.isSBullish &&
|
|
conditions.chvlmConditions.isMBullish &&
|
|
conditions.chvlmConditions.isLBullish &&
|
|
conditions.chvlmConditions.isHBearish &&
|
|
//
|
|
// XCHVWAP ...
|
|
//
|
|
conditions.chvwapConditions.hasBullishPower &&
|
|
conditions.chvwapConditions.isMBullish &&
|
|
conditions.chvwapConditions.isLBullish &&
|
|
conditions.chvwapConditions.isHBullish &&
|
|
//
|
|
// XCHICH ...
|
|
//
|
|
conditions.chichConditions.isCClosedOverKijunSen &&
|
|
conditions.chichConditions.isCTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isCSenkouSpanAOverB &&
|
|
conditions.chichConditions.isCSenkouSpanAOverLast &&
|
|
conditions.chichConditions.isCFutureSenkouSpanAOverB &&
|
|
conditions.chichConditions.isCFutureSenkouSpanAOverLast &&
|
|
conditions.chichConditions.isSClosedOverKijunSen &&
|
|
conditions.chichConditions.isSTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isSSenkouSpanAOverB &&
|
|
conditions.chichConditions.isSFutureSenkouSpanAOverB &&
|
|
conditions.chichConditions.isMClosedOverKijunSen &&
|
|
conditions.chichConditions.isMTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isMSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isMFutureSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isLClosedOverKijunSen &&
|
|
conditions.chichConditions.isLTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isLSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isLFutureSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isHClosedOverKijunSen &&
|
|
conditions.chichConditions.isHTenkanSenUnderKijunSen &&
|
|
conditions.chichConditions.isHSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isHFutureSenkouSpanAUnderB
|
|
//
|
|
)
|
|
//
|
|
||
|
|
//
|
|
(
|
|
// Symbol: EURNZDb
|
|
// ---------------
|
|
// Scores:
|
|
// ---------------
|
|
// Bullish: 58.0
|
|
// Bearish: 6.0
|
|
// ---------------
|
|
// Time: 2022.03.09 04:40:01
|
|
// ---------------
|
|
//
|
|
// XPV ...
|
|
//
|
|
conditions.pvConditions.isCloseOverFib1 &&
|
|
conditions.pvConditions.isCloseOverFib2 &&
|
|
conditions.pvConditions.isCloseOverFib3 &&
|
|
conditions.pvConditions.isCloseOverFib4 &&
|
|
conditions.pvConditions.isCloseOverFib5 &&
|
|
conditions.pvConditions.isSCLLBearish &&
|
|
conditions.pvConditions.isSCSwitchedToBearish &&
|
|
conditions.pvConditions.isSCLLSwitchedToBeraish &&
|
|
conditions.pvConditions.isMCLLBullish &&
|
|
//
|
|
// XCHM ...
|
|
//
|
|
conditions.chmConditions.hasBullishPower &&
|
|
conditions.chmConditions.isBearishPowerDecreasing &&
|
|
conditions.chmConditions.isFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverFast &&
|
|
conditions.chmConditions.isCFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverCFast &&
|
|
conditions.chmConditions.isSFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverSFast &&
|
|
conditions.chmConditions.isMFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverMFast &&
|
|
conditions.chmConditions.isLFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverLFast &&
|
|
conditions.chmConditions.isHFastUnderSlow &&
|
|
conditions.chmConditions.isClosedOverHFast &&
|
|
//
|
|
// XCHHK ...
|
|
//
|
|
conditions.chhkConditions.hasBullishPower &&
|
|
conditions.chhkConditions.isCBullish &&
|
|
conditions.chhkConditions.isCloseOverCHigh &&
|
|
conditions.chhkConditions.isSBullish &&
|
|
conditions.chhkConditions.isCloseOverSHigh &&
|
|
conditions.chhkConditions.isMBullish &&
|
|
conditions.chhkConditions.isCloseOverMHigh &&
|
|
conditions.chhkConditions.isLBullish &&
|
|
conditions.chhkConditions.isCloseOverLHigh &&
|
|
conditions.chhkConditions.isHBullish &&
|
|
conditions.chhkConditions.isCloseOverHHigh &&
|
|
//
|
|
// XCHTD ...
|
|
//
|
|
conditions.chtdConditions.hasBullishPower &&
|
|
conditions.chtdConditions.isCBullish &&
|
|
conditions.chtdConditions.isSBullish &&
|
|
conditions.chtdConditions.isMBullish &&
|
|
conditions.chtdConditions.isLBullish &&
|
|
conditions.chtdConditions.isHBullish &&
|
|
//
|
|
// XCHICHWAP ...
|
|
//
|
|
conditions.chcheConditions.hasBullishPower &&
|
|
conditions.chcheConditions.isCBullish &&
|
|
conditions.chcheConditions.isCStrongBullish &&
|
|
conditions.chcheConditions.isSBullish &&
|
|
conditions.chcheConditions.isSStrongBullish &&
|
|
conditions.chcheConditions.isMBullish &&
|
|
conditions.chcheConditions.isMStrongBullish &&
|
|
conditions.chcheConditions.isLBullish &&
|
|
conditions.chcheConditions.isLStrongBullish &&
|
|
conditions.chcheConditions.isHBullish &&
|
|
conditions.chcheConditions.isHStrongBullish &&
|
|
//
|
|
// XCHSTR ...
|
|
//
|
|
conditions.chstrConditions.hasBullishPower &&
|
|
conditions.chstrConditions.isCBullish &&
|
|
conditions.chstrConditions.isSBullish &&
|
|
conditions.chstrConditions.isMBullish &&
|
|
conditions.chstrConditions.isLBullish &&
|
|
conditions.chstrConditions.isHBullish &&
|
|
//
|
|
// XCHVLM ...
|
|
//
|
|
conditions.chvlmConditions.hasBullishPower &&
|
|
conditions.chvlmConditions.isCBullish &&
|
|
conditions.chvlmConditions.isSBullish &&
|
|
conditions.chvlmConditions.isMBullish &&
|
|
conditions.chvlmConditions.isLBullish &&
|
|
conditions.chvlmConditions.isHBullish &&
|
|
//
|
|
// XCHVWAP ...
|
|
//
|
|
conditions.chvwapConditions.hasBullishPower &&
|
|
conditions.chvwapConditions.isSBearish &&
|
|
conditions.chvwapConditions.isSSwitchedToBearish &&
|
|
conditions.chvwapConditions.isMBullish &&
|
|
conditions.chvwapConditions.isLBullish &&
|
|
conditions.chvwapConditions.isHBullish &&
|
|
//
|
|
// XCHICH ...
|
|
//
|
|
conditions.chichConditions.isCTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isCSenkouSpanAOverB &&
|
|
conditions.chichConditions.isCFutureSenkouSpanAOverB &&
|
|
conditions.chichConditions.isSClosedOverKijunSen &&
|
|
conditions.chichConditions.isSTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isSSenkouSpanAOverB &&
|
|
conditions.chichConditions.isSSenkouSpanAUnderLast &&
|
|
conditions.chichConditions.isSFutureSenkouSpanAOverB &&
|
|
conditions.chichConditions.isSFutureSenkouSpanAUnderLast &&
|
|
conditions.chichConditions.isMClosedOverKijunSen &&
|
|
conditions.chichConditions.isMTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isMSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isMFutureSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isLClosedOverKijunSen &&
|
|
conditions.chichConditions.isLTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isLSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isLFutureSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isHClosedOverKijunSen &&
|
|
conditions.chichConditions.isHTenkanSenUnderKijunSen &&
|
|
conditions.chichConditions.isHSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isHSenkouSpanAUnderLast &&
|
|
conditions.chichConditions.isHFutureSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isHFutureSenkouSpanAUnderLast
|
|
//
|
|
)
|
|
//
|
|
||
|
|
//
|
|
(
|
|
// Symbol: EURNZDb
|
|
// ---------------
|
|
// Scores:
|
|
// ---------------
|
|
// Bullish: 69.0
|
|
// Bearish: 0.0
|
|
// ---------------
|
|
// Time: 2022.03.10 04:00:01
|
|
// ---------------
|
|
//
|
|
// XPV ...
|
|
//
|
|
conditions.pvConditions.isNewPeak &&
|
|
conditions.pvConditions.isNewPeakOverLast &&
|
|
conditions.pvConditions.isFiboIncreased &&
|
|
conditions.pvConditions.isCloseOverFib1 &&
|
|
conditions.pvConditions.isCloseOverFib2 &&
|
|
conditions.pvConditions.isCloseOverFib3 &&
|
|
conditions.pvConditions.isCloseOverFib4 &&
|
|
conditions.pvConditions.isCloseOverFib5 &&
|
|
conditions.pvConditions.isSCBullish &&
|
|
conditions.pvConditions.isSCHHBullish &&
|
|
conditions.pvConditions.isSCLLBullish &&
|
|
conditions.pvConditions.isSCSwitchedToBullish &&
|
|
conditions.pvConditions.isSCLLSwitchedToBullish &&
|
|
conditions.pvConditions.isMCBullish &&
|
|
conditions.pvConditions.isMCHHBullish &&
|
|
conditions.pvConditions.isMCLLBullish &&
|
|
conditions.pvConditions.isLCHHBullish &&
|
|
conditions.pvConditions.isHCHHBullish &&
|
|
//
|
|
// XCHM ...
|
|
//
|
|
conditions.chmConditions.hasBullishPower &&
|
|
conditions.chmConditions.isBullishPowerIncreasing &&
|
|
conditions.chmConditions.isFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverFast &&
|
|
conditions.chmConditions.isCFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverCFast &&
|
|
conditions.chmConditions.isSFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverSFast &&
|
|
conditions.chmConditions.isMFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverMFast &&
|
|
conditions.chmConditions.isLFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverLFast &&
|
|
conditions.chmConditions.isHFastOverSlow &&
|
|
conditions.chmConditions.isClosedOverHFast &&
|
|
//
|
|
// XCHHK ...
|
|
//
|
|
conditions.chhkConditions.hasBullishPower &&
|
|
conditions.chhkConditions.isCBullish &&
|
|
conditions.chhkConditions.isCloseOverCHigh &&
|
|
conditions.chhkConditions.isSBullish &&
|
|
conditions.chhkConditions.isCloseOverSHigh &&
|
|
conditions.chhkConditions.isMBullish &&
|
|
conditions.chhkConditions.isCloseOverMHigh &&
|
|
conditions.chhkConditions.isLBullish &&
|
|
conditions.chhkConditions.isCloseOverLHigh &&
|
|
conditions.chhkConditions.isHBullish &&
|
|
conditions.chhkConditions.isCloseOverHHigh &&
|
|
//
|
|
// XCHTD ...
|
|
//
|
|
conditions.chtdConditions.hasBullishPower &&
|
|
conditions.chtdConditions.isCBullish &&
|
|
conditions.chtdConditions.isSBullish &&
|
|
conditions.chtdConditions.isMBullish &&
|
|
conditions.chtdConditions.isLBullish &&
|
|
conditions.chtdConditions.isHBullish &&
|
|
//
|
|
// XCHICHWAP ...
|
|
//
|
|
conditions.chcheConditions.hasBullishPower &&
|
|
conditions.chcheConditions.isCBullish &&
|
|
conditions.chcheConditions.isCStrongBullish &&
|
|
conditions.chcheConditions.isSBullish &&
|
|
conditions.chcheConditions.isSStrongBullish &&
|
|
conditions.chcheConditions.isMBullish &&
|
|
conditions.chcheConditions.isMStrongBullish &&
|
|
conditions.chcheConditions.isMStrongSwitchedToBullish &&
|
|
conditions.chcheConditions.isLBullish &&
|
|
conditions.chcheConditions.isLStrongBullish &&
|
|
conditions.chcheConditions.isHBullish &&
|
|
conditions.chcheConditions.isHStrongBullish &&
|
|
//
|
|
// XCHSTR ...
|
|
//
|
|
conditions.chstrConditions.hasBullishPower &&
|
|
conditions.chstrConditions.isCBullish &&
|
|
conditions.chstrConditions.isSBullish &&
|
|
conditions.chstrConditions.isMBullish &&
|
|
conditions.chstrConditions.isLBullish &&
|
|
conditions.chstrConditions.isHBullish &&
|
|
//
|
|
// XCHVLM ...
|
|
//
|
|
conditions.chvlmConditions.hasBullishPower &&
|
|
conditions.chvlmConditions.isCBullish &&
|
|
conditions.chvlmConditions.isSBullish &&
|
|
conditions.chvlmConditions.isMBullish &&
|
|
conditions.chvlmConditions.isLBullish &&
|
|
conditions.chvlmConditions.isHBullish &&
|
|
//
|
|
// XCHVWAP ...
|
|
//
|
|
conditions.chvwapConditions.hasBullishPower &&
|
|
conditions.chvwapConditions.isMBullish &&
|
|
conditions.chvwapConditions.isLBullish &&
|
|
conditions.chvwapConditions.isHBullish &&
|
|
//
|
|
// XCHICH ...
|
|
//
|
|
conditions.chichConditions.isCClosedOverKijunSen &&
|
|
conditions.chichConditions.isCTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isCSenkouSpanAOverB &&
|
|
conditions.chichConditions.isCSenkouSpanAOverLast &&
|
|
conditions.chichConditions.isCFutureSenkouSpanAOverB &&
|
|
conditions.chichConditions.isCFutureSenkouSpanAOverLast &&
|
|
conditions.chichConditions.isCSenkouSpanACrossedOverLast &&
|
|
conditions.chichConditions.isCFutureSenkouSpanACrossedOverLast &&
|
|
conditions.chichConditions.isSClosedOverKijunSen &&
|
|
conditions.chichConditions.isSTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isSSenkouSpanAOverB &&
|
|
conditions.chichConditions.isSSenkouSpanAOverLast &&
|
|
conditions.chichConditions.isSFutureSenkouSpanAOverB &&
|
|
conditions.chichConditions.isSFutureSenkouSpanAOverLast &&
|
|
conditions.chichConditions.isSSenkouSpanACrossedOverLast &&
|
|
conditions.chichConditions.isSFutureSenkouSpanACrossedOverLast &&
|
|
conditions.chichConditions.isMClosedOverKijunSen &&
|
|
conditions.chichConditions.isMTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isMSenkouSpanAOverB &&
|
|
conditions.chichConditions.isMFutureSenkouSpanAOverB &&
|
|
conditions.chichConditions.isLClosedOverKijunSen &&
|
|
conditions.chichConditions.isLTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isLSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isLFutureSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isHClosedOverKijunSen &&
|
|
conditions.chichConditions.isHTenkanSenOverKijunSen &&
|
|
conditions.chichConditions.isHSenkouSpanAUnderB &&
|
|
conditions.chichConditions.isHFutureSenkouSpanAUnderB
|
|
//
|
|
)
|
|
//
|
|
;
|
|
|
|
//
|
|
return result;
|
|
}
|
|
};
|
|
|
|
// |