Login Page - Create Account

Support Board


Date/Time: Sat, 23 Nov 2024 20:51:27 +0000



Post From: ACSIL Custom Autotrading System assistance

[2024-08-06 14:45:54]
User431178 - Posts: 541

please see attached screenshot (far left col), changing the VBP study to Ask vol- bid Vol to display, the premise being the system will only enter longs/shorts at prices where delta >0/<0, does this make sense,

So do you want to know whether the current bar has +/- delta at price or the volume profile?



sweepgeniehelp1.cpp: In function 'void scsf_SweepGenie(SCStudyInterfaceRef)':
sweepgeniehelp1.cpp:107:104: error: invalid conversion from 'const s_VolumeAtPriceV2**' to 's_VolumeAtPriceV2**' [-fpermissive]
107 | if (sc.VolumeAtPriceForBars->GetVAPElementForPriceIfExists(sc.ArraySize - 1, priceInTicks, &volumeAtPrice, unusedVar))

This means that you need to drop the const prefix from here
const s_VolumeAtPriceV2* volumeAtPrice = nullptr;

Another option would be to use GetVAPElementAtPrice which returns a const reference to the VAP object (which is empty if not found).


const auto& vap = sc.VolumeAtPriceForBars->GetVAPElementAtPrice(sc.ArraySize - 1, priceInTicks);

if (!vap.IsEmpty())
{
double askPullingStacking = sc.GetAskMarketDepthStackPullValueAtPrice(askDepthEntry.Price);
if (askPullingStacking >= volumeThreshold && volumeAtPrice->BidVolume > volumeAtPrice->AskVolume)
{
sellConditionMet = true;
}
}

The member functions for vapcontainer are mentioned here - ACSIL Interface Members - Variables and Arrays: sc.VolumeAtPriceForBars Member Function Descriptions


You would also want to add the below to your setdefaults section.

sc.scMaintainVolumeAtPriceData = 1;

ACSIL Interface Members - Variables and Arrays: sc.MaintainVolumeAtPriceData