Support Board
Date/Time: Sat, 21 Jun 2025 13:20:59 +0000
[Programming Help] - Get the price level from Large Trade Volume Trade Indicator
View Count: 979
[2022-04-19 15:06:01] |
User189399 - Posts: 48 |
I want to get the price level of the marker in the Large Trade Volume Trade Indicator so as to input this value to my ACSIL program. I cannot find it in the Subgraph output of the indicator. Could u advise how I can get this value from the indicator or another ACSIL functions or Studies? Thanks
|
[2022-04-21 01:21:47] |
User189399 - Posts: 48 |
Any updates?
|
[2022-04-21 07:04:52] |
User431178 - Posts: 716 |
You need to use sc.p_VolumeLevelAtPriceForBars() to access the data associated with the large volume trade indicator. Large Volume Trade Indicator |
[2022-04-26 08:57:01] |
User189399 - Posts: 48 |
As you said it works similar to ACSIL Interface Members - Variables and Arrays: sc.VolumeAtPriceForBars. I tried the code below with compiler error that the "no matching unction call for GetVAPElementAtIndex". Could you suggest example code or documentation specific for sc.p_VolumeLevelAtPriceForBars? c_VolumeLevelAtPriceContainer *p_VolumeLevelAtPriceForBars = NULL; int VAPSizeAtBarIndex = sc.p_VolumeLevelAtPriceForBars->GetSizeAtBarIndex(BarIndex); unsigned int MaxTradeVol=0; float MaxTradePrice=0.0; for (int VAPIndex = 0; VAPIndex < VAPSizeAtBarIndex; VAPIndex++){ if (!sc.p_VolumeLevelAtPriceForBars->GetVAPElementAtIndex(BarIndex, VAPIndex, &p_VolumeLevelAtPriceForBars)) break; if(p_VolumeLevelAtPriceForBars->GetMaxVolumeAtPrice > MaxTradeVol){ MaxTradeVol=p_VolumeLevelAtPriceForBars->GetMaxVolumeAtPrice; MaxTradePrice=sc.Low[BarIndex]+VAPIndex *sc.TickSize; } } |
[2022-04-26 10:21:58] |
User431178 - Posts: 716 |
Suggest reviewing the header file VAPContainer.h for more information, however the example below compiles fine. s_VolumeLevelAtPrice* p_VolumeLevelAtPrice = nullptr; int VAPSizeAtBarIndex = sc.p_VolumeLevelAtPriceForBars->GetSizeAtBarIndex(BarIndex); unsigned int MaxTradeVol = 0; float MaxTradePrice = 0.0f; for (int VAPIndex = 0; VAPIndex < VAPSizeAtBarIndex; VAPIndex++) { if (!sc.p_VolumeLevelAtPriceForBars->GetVAPElementAtIndex(BarIndex, VAPIndex, &p_VolumeLevelAtPrice)) break; unsigned int maxTradeVolAtPrice = sc.p_VolumeLevelAtPriceForBars->GetMaxVolumeAtPrice(BarIndex, p_VolumeLevelAtPrice->PriceInTicks); if (maxTradeVolAtPrice > MaxTradeVol) { MaxTradeVol = maxTradeVolAtPrice; MaxTradePrice = sc.TicksToPriceValue(p_VolumeLevelAtPrice->PriceInTicks); } } |
To post a message in this thread, you need to log in with your Sierra Chart account: