// // 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); // } // } // }