Last Preparation ...

This commit is contained in:
2026-01-01 06:22:05 +03:30
parent 6fd07ea320
commit cf30756f54
9 changed files with 728 additions and 254 deletions
@@ -909,108 +909,6 @@ class XCX121XKIStrategy1Signaller : public XCX121XKIBaseSignaller
//
int barIndex = bar.Index() + 1;
//
// Safe for Entry ...
bool isSafe = false;
bool isSafeForBullishEntry = kiParser.IsSafeBullishEntry(barIndex);
bool isSafeForBearishEntry = kiParser.IsSafeBearishEntry(barIndex);
//
// POI ...
bool isPOI = poiDetector.IsPOI(dir, barIndex);
bool isBullishPOI = isPOI &&
IsXBullish(dir);
bool isBearishPOI = isPOI &&
IsXBearish(dir);
isSafe = (isBullishPOI && isSafeForBullishEntry) ||
(isBearishPOI && isSafeForBearishEntry);
if (isPOI && isSafe)
{
//
// Print("isPOI: ", ToXString(dir));
// DebugBreak();
}
//
// Breakout POI ...
bool isBreakoutPOI = poiDetector.IsBreakoutPOI(dir, barIndex);
bool isBullishBreakoutPOI = isBreakoutPOI &&
IsXBullish(dir);
bool isBearishBreakoutPOI = isBreakoutPOI &&
IsXBearish(dir);
isSafe = (isBullishBreakoutPOI && isSafeForBullishEntry) ||
(isBearishBreakoutPOI && isSafeForBearishEntry);
if (isBreakoutPOI && isSafe)
{
//
// Print("isBreakoutPOI: ", ToXString(dir));
// DebugBreak();
}
//
// Reversal POI ...
bool isReversalPOI = poiDetector.IsReversalPOI(dir, barIndex);
bool isBullishReversalPOI = isReversalPOI &&
IsXBullish(dir);
bool isBearishReversalPOI = isReversalPOI &&
IsXBearish(dir);
isSafe = (isBullishReversalPOI && isSafeForBearishEntry) ||
(isBearishReversalPOI && isSafeForBullishEntry);
if (isReversalPOI)
{
// //
// Print("isReversalPOI: ", ToXString(dir));
// DebugBreak();
}
//
// Continuation POI ...
bool isContinuationPOI = poiDetector.IsContinuationPOI(dir, barIndex);
bool isBullishContinuationPOI = isContinuationPOI &&
IsXBullish(dir);
bool isBearishContinuationPOI = isContinuationPOI &&
IsXBearish(dir);
isSafe = (isBullishContinuationPOI && isSafeForBullishEntry) ||
(isBearishContinuationPOI && isSafeForBearishEntry);
if (isContinuationPOI && isSafe)
{
//
// Print("isContinuationPOI: ", ToXString(dir));
// DebugBreak();
}
//
// Exhaustion POI ...
bool isExhaustionPOI = poiDetector.IsExhaustionPOI(dir, barIndex);
bool isBullishExhaustionPOI = isExhaustionPOI &&
IsXBullish(dir);
bool isBearishExhaustionPOI = isExhaustionPOI &&
IsXBearish(dir);
isSafe = (isBullishExhaustionPOI && isSafeForBullishEntry) ||
(isBearishExhaustionPOI && isSafeForBearishEntry);
if (isExhaustionPOI && isSafe)
{
//
Print("isExhaustionPOI: ", ToXString(dir));
DebugBreak();
}
//
// TrendExhausted POI ...
bool isTrendExhaustedPOI = poiDetector.IsTrendExhaustedPOI(dir, barIndex);
bool isBullishTrendExhaustedPOI = isTrendExhaustedPOI &&
IsXBullish(dir);
bool isBearishTrendExhaustedPOI = isTrendExhaustedPOI &&
IsXBearish(dir);
isSafe = (isBullishTrendExhaustedPOI && isSafeForBullishEntry) ||
(isBearishTrendExhaustedPOI && isSafeForBearishEntry);
if (isTrendExhaustedPOI && isSafe)
{
//
Print("isTrendExhaustedPOI: ", ToXString(dir));
DebugBreak();
}
//
result =
result &&
@@ -1054,22 +952,9 @@ class XCX121XKIStrategy1Signaller : public XCX121XKIBaseSignaller
}
//
bool isBullish = kiParser.IsBullishMomentumTrend(bar.Index());
bool isBearish = kiParser.IsBearishMomentumTrend(bar.Index());
result = isBullish ||
isBearish;
if (!result)
{
return result;
}
int barIndex = bar.Index() + 1;
//
dir = isBullish
? X_DIRECTION_BULLISH
: isBearish
? X_DIRECTION_BEARISH
: X_DIRECTION_NONE;
result = ToBox(bar, zone, dir, X_BAR_PATTERN_MOMENTUM);
result =
result &&
zone.IsValid() &&
@@ -1111,22 +996,9 @@ class XCX121XKIStrategy1Signaller : public XCX121XKIBaseSignaller
}
//
bool isBullish = poiDetector.IsBullishBreakoutPOI(bar.Index());
bool isBearish = poiDetector.IsBearishBreakoutPOI(bar.Index());
result = isBullish ||
isBearish;
if (!result)
{
return result;
}
int barIndex = bar.Index() + 1;
//
dir = isBullish
? X_DIRECTION_BULLISH
: isBearish
? X_DIRECTION_BEARISH
: X_DIRECTION_NONE;
result = ToBox(bar, zone, dir, X_BAR_PATTERN_TRUE_GAPED);
result =
result &&
zone.IsValid() &&
@@ -1168,22 +1040,9 @@ class XCX121XKIStrategy1Signaller : public XCX121XKIBaseSignaller
}
//
bool isBullish = poiDetector.IsBullishTrendExhaustedPOI(bar.Index());
bool isBearish = poiDetector.IsBearishTrendExhaustedPOI(bar.Index());
result = isBullish ||
isBearish;
if (!result)
{
return result;
}
int barIndex = bar.Index() + 1;
//
dir = isBullish
? X_DIRECTION_BULLISH
: isBearish
? X_DIRECTION_BEARISH
: X_DIRECTION_NONE;
result = ToBox(bar, zone, dir, X_BAR_PATTERN_PIERCING);
result =
result &&
zone.IsValid() &&
@@ -1226,37 +1085,9 @@ class XCX121XKIStrategy1Signaller : public XCX121XKIBaseSignaller
}
//
bool isBullish = kiParser.IsTrendStrongBullish(bar.Index());
bool isBearish = kiParser.IsTrendStrongBearish(bar.Index());
result = isBullish ||
isBearish;
if (!result)
{
return result;
}
int barIndex = bar.Index() + 1;
//
// Confirm Direction by Candlestick Continuation Patterns ...
isBullish =
isBullish &&
poiDetector.IsBullishContinuationPOI(bar.Index());
isBearish =
isBearish &&
poiDetector.IsBearishContinuationPOI(bar.Index());
result = isBullish ||
isBearish;
if (!result)
{
return result;
}
//
dir = isBullish
? X_DIRECTION_BULLISH
: isBearish
? X_DIRECTION_BEARISH
: X_DIRECTION_NONE;
result = ToBox(bar, zone, dir, X_BAR_PATTERN_PIERCING);
result =
result &&
zone.IsValid() &&