Support Board
Date/Time: Tue, 22 Apr 2025 16:27:02 +0000
Post From: Annoying problem with Heiken Ashi and ACSIL (for SC engineer)
[2025-01-08 16:24:50] |
User431178 - Posts: 654 |
When Heiken Ashi is set to "Display as main price Graph", it is impossible to access Heiken Ashi OHLC values: I always get the underlying price OHLC, even when accessing values from the indicator itself.
Are you sure about that? SCSFExport scsf_hk_values(SCStudyInterfaceRef sc) { auto& in_study_id = sc.Input[0]; if (sc.SetDefaults) { sc.GraphName = "Chart Values"; sc.GraphRegion = 0; sc.AutoLoop = 0; sc.ScaleRangeType = SCALE_AUTO; sc.DisplayStudyInputValues = 0; sc.CalculationPrecedence = VERY_LOW_PREC_LEVEL; in_study_id.Name = "Study ID"; in_study_id.SetStudyID(0); return; } auto refData = SCGraphData{}; sc.GetStudyArraysFromChartUsingID(sc.ChartNumber , in_study_id.GetStudyID() , refData); if (sc.UpdateStartIndex == 0) { const auto open = sc.FormatGraphValue(sc.Open[sc.ArraySize - 1], sc.BasedOnGraphValueFormat); const auto high = sc.FormatGraphValue(sc.High[sc.ArraySize - 1], sc.BasedOnGraphValueFormat); const auto low = sc.FormatGraphValue(sc.Low[sc.ArraySize - 1], sc.BasedOnGraphValueFormat); const auto last = sc.FormatGraphValue(sc.Close[sc.ArraySize - 1], sc.BasedOnGraphValueFormat); auto msg = SCString{}; msg.Format("Main Chart Values at index %d | Open: %s, High: %s, Low: %s, Last: %s" , sc.ArraySize - 1 , open.GetChars() , high.GetChars() , low.GetChars() , last.GetChars()); sc.AddMessageToLog(msg, 0); if (refData.GetArraySize() == 0) return; const auto open_ref = sc.FormatGraphValue(refData[SC_OPEN][sc.ArraySize - 1], sc.BasedOnGraphValueFormat); const auto high_ref = sc.FormatGraphValue(refData[SC_HIGH][sc.ArraySize - 1], sc.BasedOnGraphValueFormat); const auto low_ref = sc.FormatGraphValue(refData[SC_LOW][sc.ArraySize - 1], sc.BasedOnGraphValueFormat); const auto last_ref = sc.FormatGraphValue(refData[SC_LAST][sc.ArraySize - 1], sc.BasedOnGraphValueFormat); msg.Format("HK Values at index %d | Open: %s, High: %s, Low: %s, Last: %s" , sc.ArraySize - 1 , open_ref.GetChars() , high_ref.GetChars() , low_ref.GetChars() , last_ref.GetChars()); sc.AddMessageToLog(msg, 0); } } 2025-01-08 10:19:51.416 | Chart: NQH25-CME[M] 1 Min #1 | Study: Chart Values | Main Chart Values at index 24856 | Open: 21319.75, High: 21324.50, Low: 21319.75, Last: 21323.00 2025-01-08 10:19:51.416 | Chart: NQH25-CME[M] 1 Min #1 | Study: Chart Values | HK Values at index 24856 | Open: 21314.32, High: 21324.50, Low: 21314.32, Last: 21323.00 2025-01-08 10:19:58.176 | Chart: NQH25-CME[M] 1 Min #1 Heikin-Ashi | Study: Chart Values | Main Chart Values at index 24856 | Open: 21314.32, High: 21324.50, Low: 21314.32, Last: 21323.00 2025-01-08 10:19:58.176 | Chart: NQH25-CME[M] 1 Min #1 Heikin-Ashi | Study: Chart Values | HK Values at index 24856 | Open: 21314.32, High: 21324.50, Low: 21314.32, Last: 21323.00 Rows 1 and 2 above are with HK as sub-chart, rows 3 and 4 are with HK as main chart. When HK is main chart, values return for OHLC are same for HK and chart. |