apply Rejected, Activated and Breaked Box ...

This commit is contained in:
2025-03-21 02:11:09 +03:30
parent 1f8d75f9b4
commit f59ec0c65f
4 changed files with 1101 additions and 134 deletions
File diff suppressed because it is too large Load Diff
@@ -488,6 +488,52 @@ class XCX121SMCXWZSignalDetector : public XCBase
iSL, iSL,
sls // sls //
); );
//
// Fix rf Reward ...
rfRewar = 2;
}
else if (signalProvider == X121SMC_XWZ_PROVIDER_XACTIVATED_BOX)
{
//
iAtr = provider.decisionXConditions.atrBuffer[1];
iAtr *= 0;
//
Clean(sls);
//
// Prepare Box fro SL ...
iSL = pivot;
Add(
iSL,
sls //
);
//
// Fix rf Reward ...
rfRewar = 2;
}
else if (signalProvider == X121SMC_XWZ_PROVIDER_XBREAKED_BOX)
{
//
iAtr = provider.decisionXConditions.atrBuffer[1];
iAtr *= 0;
//
Clean(sls);
//
// Prepare Box fro SL ...
iSL = pivot;
Add(
iSL,
sls //
);
//
// Fix rf Reward ...
rfRewar = 2;
} }
// //
+64 -83
View File
@@ -32,7 +32,9 @@ enum ENUM_X121SMC_XWZ_PROVIDERS
{ {
X121SMC_XWZ_PROVIDER_NONE, X121SMC_XWZ_PROVIDER_NONE,
X121SMC_XWZ_PROVIDER_XHKMA, X121SMC_XWZ_PROVIDER_XHKMA,
X121SMC_XWZ_PROVIDER_XBREAKED_BOX,
X121SMC_XWZ_PROVIDER_XREJECTED_BOX, X121SMC_XWZ_PROVIDER_XREJECTED_BOX,
X121SMC_XWZ_PROVIDER_XACTIVATED_BOX,
}; };
// //
@@ -1114,7 +1116,7 @@ struct X121SMCStrategyXWZWorkingZone
// //
// Senario 1: // Senario 1:
// --------------------------------------------- // ---------------------------------------------
// XPVHK Conditions ... // Rejected Box ...
// --------------------------------------------- // ---------------------------------------------
bool useSenario1 = true; bool useSenario1 = true;
bool isSenario1Happend = false; bool isSenario1Happend = false;
@@ -1130,7 +1132,6 @@ struct X121SMCStrategyXWZWorkingZone
dir, dir,
waitingBoxes, waitingBoxes,
provider, provider,
X_CYCLE_ANALYSE,
barIndex // barIndex //
); );
@@ -1154,68 +1155,80 @@ struct X121SMCStrategyXWZWorkingZone
// //
// Senario 2: // Senario 2:
// --------------------------------------------------- // ---------------------------------------------------
// Detect Signal Based On Breaked Rejection Boxes ... // Activated Box ...
// --------------------------------------------------- // ---------------------------------------------------
bool useSenario2 = false; bool useSenario2 = true;
bool isSenario2Happend = false; bool isSenario2Happend = false;
bool isSenario2Bullish = false; bool isSenario2Bullish = false;
bool isSenario2Bearish = false; bool isSenario2Bearish = false;
// if (useSenario2) if (useSenario2)
// { {
// // //
// // Senario 2 Working Based on isSenario2Happend = cParser.HasSenario2Conditions(
// // Breaked Boxes ... X_CYCLE_DECISION,
// // Since we Works only box,
// // when Has UnAvailable Boxes ... holderBox,
// has = HasBreakedBoxes(); dir,
// if (has) waitingBoxes,
// { provider,
// // barIndex //
// ENUM_X_DIRECTION overalTrend; );
// bool hasTrend = DetectOveralDirection(overalTrend);
// if (hasTrend) //
// { isSenario2Bullish =
// // isSenario2Happend &&
// isSenario2Happend = cParser.HasSenario2Conditions( IsBullish(dir);
// X_CYCLE_DECISION,
// breakedBoxes,
// box,
// dir,
// provider,
// barIndex //
// );
// // //
// isSenario2Bullish = isSenario2Bearish =
// isSenario2Happend && isSenario2Happend &&
// IsBullish(dir); IsBearish(dir);
// // //
// isSenario2Bearish = if (isSenario2Happend)
// isSenario2Happend && {
// IsBearish(dir); signalProvider = X121SMC_XWZ_PROVIDER_XACTIVATED_BOX;
}
// // }
// if (isSenario2Happend)
// {
// signalProvider = X121SMC_XWZ_PROVIDER_ACTIVATED_BOX;
// }
// }
// }
// }
// //
// Senario 3: // Senario 3:
// --------------------------------------------- // ---------------------------------------------------
// --------------------------------------------- // Breaked Box ...
bool useSenario3 = false; // ---------------------------------------------------
bool useSenario3 = true;
bool isSenario3Happend = false; bool isSenario3Happend = false;
bool isSenario3Bullish = false; bool isSenario3Bullish = false;
bool isSenario3Bearish = false; bool isSenario3Bearish = false;
// if (useSenario3) if (useSenario3)
// { {
// } //
isSenario3Happend = cParser.HasSenario3Conditions(
X_CYCLE_DECISION,
box,
holderBox,
dir,
waitingBoxes,
provider,
barIndex //
);
//
isSenario3Bullish =
isSenario3Happend &&
IsBullish(dir);
//
isSenario3Bearish =
isSenario3Happend &&
IsBearish(dir);
//
if (isSenario3Happend)
{
signalProvider = X121SMC_XWZ_PROVIDER_XBREAKED_BOX;
}
}
// //
// Senario 4: // Senario 4:
@@ -1226,35 +1239,6 @@ struct X121SMCStrategyXWZWorkingZone
bool isSenario4Happend = false; bool isSenario4Happend = false;
bool isSenario4Bullish = false; bool isSenario4Bullish = false;
bool isSenario4Bearish = false; bool isSenario4Bearish = false;
// if (useSenario4)
// {
// //
// isSenario4Happend = cParser.HasSenario4Conditions(
// X_CYCLE_ANALYSE,
// box,
// holderBox,
// dir,
// provider,
// X_CYCLE_CONSOLIDATION,
// barIndex //
// );
// //
// isSenario4Bullish =
// isSenario4Happend &&
// IsBullish(dir);
// //
// isSenario4Bearish =
// isSenario4Happend &&
// IsBearish(dir);
// //
// if (isSenario4Happend)
// {
// signalProvider = X121SMC_XWZ_PROVIDER_ACTIVATED_BOX;
// }
// }
// //
// Senario 5: // Senario 5:
@@ -1264,9 +1248,6 @@ struct X121SMCStrategyXWZWorkingZone
bool isSenario5Happend = false; bool isSenario5Happend = false;
bool isSenario5Bullish = false; bool isSenario5Bullish = false;
bool isSenario5Bearish = false; bool isSenario5Bearish = false;
// if (useSenario5)
// {
// }
// //
// Summarize All Senario(s) Conditions ... // Summarize All Senario(s) Conditions ...
@@ -798,7 +798,7 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
// //
x121Inputs.xhkInputs.drawRawXHKCandles = showAll || false; x121Inputs.xhkInputs.drawRawXHKCandles = showAll || false;
x121Inputs.xhkInputs.drawSmoothedXHKCandles = showAll || true; x121Inputs.xhkInputs.drawSmoothedXHKCandles = showAll || false;
// //
// XMAS ... // XMAS ...