last works on Peak and Vales ...

This commit is contained in:
2025-10-06 14:39:44 +03:30
parent 2b48fa569e
commit a03613f4cd
9 changed files with 3806 additions and 769 deletions
@@ -0,0 +1,208 @@
//
// Draw Market Analysis ...
// has = iStructure.pvAnalysis.IsValid();
// if (has)
// {
// //
// XBoxZone iBox;
// XCBoxObject *iBoxObj;
//
// poiDrawer.RemoveDraws();
// //
// has = iStructure.pvAnalysis.HasSupportBox(iBox);
// if (has)
// {
// //
// iBox.to = iBar.time;
// poiDrawer.DrawBox(
// iBox,
// iBoxObj,
// true,
// iBox.type //
// );
// }
// //
// ZeroMemory(iBoxObj);
// has = iStructure.pvAnalysis.HasResistanceBox(iBox);
// if (has)
// {
// //
// iBox.to = iBar.time;
// poiDrawer.DrawBox(
// iBox,
// iBoxObj,
// true,
// iBox.type //
// );
// }
// }
// //
// // Draw Zones ...
// has = HasChild(iStructure.supports);
// if (has) {
// //
// CArrayObj *iSupportObjs;
// poiDrawer.DrawBoxes(
// iStructure.supports,
// iSupportObjs,
// true //
// );
// }
// //
// has = HasChild(iStructure.resistances);
// if (has) {
// //
// CArrayObj *iResistanceObjs;
// poiDrawer.DrawBoxes(
// iStructure.resistances,
// iResistanceObjs,
// true //
// );
// }
//
// Detecte Fibo Section Changes ...
// //
// has = fimaHelper.IsFiboSectionChanged(iDir, iBar.Index());
// has = has &&
// IsXBullish(iDir) &&
// fimaHelper.IsValeOverLast(iBar.Index());
// //
// has = fimaHelper.IsFiboSectionChanged(iDir, iBar.Index());
// has = has &&
// IsXBearish(iDir) &&
// fimaHelper.IsPeakUnderLast(iBar.Index());
// //
// has = fimaHelper.HasFiboPush(iDir, iBar.Index(), 5);
// //
// XBoxZone fimaZones[];
// int fimaZonesCount = fimaHelper.DetectXFIMAZones(
// fimaZones,
// iBar.Index(),
// true, // Only Valid Zones ...
// 50, // Number of Zones ...
// 4, // Shadow Multiplier ...
// 1, // Strength ...
// 7, // Validation Length ...
// 500 // Loopback ..
// );
//
// XPivot fimaPivots[];
// int fimaPivotsCount = fimaHelper.DetecteXFIMAPivots(
// fimaPivots,
// iBar.Index(),
// 50, // Number of Pivots ...
// 7, // Validation Length ...
// 500 // Loopback ...
// );
// //
// has = IsValidSize(fimaZonesCount);
// if (has)
// {
// //
// // Draw Detected Zones ...
// for (int i = 0; i < fimaZonesCount; i++)
// {
// //
// XCBoxObject *iObj;
// has = poiDrawer.DrawBox(
// fimaZones[i],
// iObj,
// true, // Ignore At ...
// fimaZones[i].type // Specified Name ...
// );
// if (has)
// {
// zoneObjects.Add(iObj);
// }
// }
// }
// //
// has = IsValidSize(fimaPivotsCount);
// if (has)
// {
// //
// // Draw Detected Pivots ...
// for (int i = 0; i < fimaPivotsCount; i++)
// {
// //
// XCBarArrowObject *iObj;
// has = poiDrawer.DrawPivot(
// fimaPivots[i],
// iObj);
// if (has)
// {
// pivotObjects.Add(iObj);
// }
// }
// }
//
// Detect DecisionBars ...
// XOHCL decisionBars[];
// int decisionBarsCount = 0;
// ENUM_X_DIRECTION decisionBarDirs[];
// decisionBarsCount = fimaHelper.DetectXFIMAPOIBars(
// decisionBars,
// decisionBarDirs,
// iBar.Index(),
// X_DIRECTION_ALL, // For Dir ...
// 300 // Required Number of Bars ...
// );
// decisionBarsCount = fimaHelper.DetectXFIMAReversalPOIBars(
// decisionBars,
// decisionBarDirs,
// iBar.Index(),
// true, // Force Touch Boundary ...
// X_DIRECTION_ALL, // For Dir ...
// 300 // Required Number of Bars ...
// );
// decisionBarsCount = fimaHelper.DetectXFIMAContinuationalPOIBars(
// decisionBars,
// decisionBarDirs,
// iBar.Index(),
// true,
// X_DIRECTION_ALL, // For Dir ...
// 300 // Required Number of Bars ...
// );
// //
// has = IsValidSize(decisionBarsCount);
// if (has)
// {
// //
// for (int i = 0; i < decisionBarsCount; i++)
// {
// //
// XCBarArrowObject *iObj;
// has = poiDrawer.DrawBarArrow(
// decisionBars[i],
// iObj,
// IsXBullish(decisionBarDirs[i]) ? X_PRICE_LOW : X_PRICE_HIGH,
// 159,
// IsXBullish(decisionBarDirs[i]) ? clrAqua : clrMagenta,
// 5,
// IsXBullish(decisionBarDirs[i]) ? ANCHOR_TOP : ANCHOR_BOTTOM,
// "XOHCL_" + ToXString(TimeToSeconds(decisionBars[i].time)),
// true, // Ignore Bar Tag ...
// 5 // Threshold ...
// );
// if (has)
// {
// barObjects.Add(iObj);
// }
// }
// }