Login Page - Create Account

Support Board


Date/Time: Sun, 28 Apr 2024 00:51:03 +0000



study parameter control

View Count: 3469

[2018-02-03 21:10:57]
dtl-saw - Posts: 79
Is it possible via ACSIL to write a study that controls the input parameters of another study?

Specifically, I would like to modify via my custom ACSIL study the parameters of the SC study "Volume by Price"
Given all of the input controls available in the "Volume by Price" study I would like to be able to configure the study using my custom ACSIL study via advanced custom study buttons.

Is this possible?
Can you give me a possible example or reference of were that might have been done or how to do it?

Thanks
[2018-02-05 18:31:22]
Sierra Chart Engineering - Posts: 104368
No, this is not supported at this time. It should be later this year.

However, if you just want to change Input settings through a control bar button, then use Study Collections:
Control Bar: Control Bar Study Collection Buttons and Keyboard Shortcuts

Effectively you should be able to accomplish the same thing.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2018-02-05 18:33:24
[2018-02-05 18:33:30]
Sierra Chart Engineering - Posts: 104368
Prior post has been updated.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2018-02-05 19:57:12]
dtl-saw - Posts: 79
Thanks for the response and looking forward to later this year when it becomes available.

Would it be possible that you make the "Volume by Price" study available as a function call that returns or pass by reference all of the current internal parameters like VAH/VAL/VWAP/VPOC/etc. ?
Really, I'm just trying to avoid rewriting your current "Volume by Price" study as I know I could do that using the currently available volume based price available for each bar.

thanks again
[2018-02-05 22:05:39]
Sierra Chart Engineering - Posts: 104368
All of these:

VAH/VAL/VWAP/VPOC

exist as Subgraphs in the Volume by Price study and can be accessed following the methods described here:
ACSIL Programming Concepts: Using or Referencing Study/Indicator Data in an ACSIL Function
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2018-02-05 23:30:02]
dtl-saw - Posts: 79
All of those methods are good stuff, but what I really need is for your "Volume by Price" study to be included in your "Intermediate Study Calculation Functions" or if I was able modify the parameters of an existing "Volume by Price" study already on my chart using my custom ACSIL study.

Best case scenario is that you make the "Volume by Price" study into a function available for calling from within ACSIL custom studies or almost as good of a scenario is that you make the "Volume by Price" study code available so that I could modify it for my needs.

Best regards
[2018-02-07 17:09:51]
dtl-saw - Posts: 79
Hi,
Before I begin writing a study/function that basically duplicates your existing "Volume by Price" study I just want to check with you and get a definitive (yes or no) about whether or not you will make your existing "Volume by Price" study code available as either a function call or the source code.

Thanks
[2018-02-07 18:50:06]
Sierra Chart Engineering - Posts: 104368
I just want to check with you and get a definitive (yes or no) about whether or not you will make your existing "Volume by Price" study code available as either a function call or the source code.

No, this is explained here:
How to Build an Advanced Custom Study from Source Code: Source Code for Some Built in Studies Not Available

Also it is not possible for that to be available as a function call. It is way too complex for that.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2018-06-15 21:14:52]
dtl-saw - Posts: 79
Hi,
I notice that you are spending quite a bit of time lately on improving the performance of the Volume by price study and wanted to remind you about this post I made in February this year.
Please review my question #1 and your response #2 and let me know if you have a better estimate on the time when I will be able to control the Volume by price study input parameters from my custom ACSIL study.
My intention is to have a VbP study on my chart and then use my custom ACSIL study with button controls to manipulate the VbP study inputs to change things like start and end dates, show/hide, etc. whichever VbP inputs would be appropriate for different conditions.

Thanks
[2018-06-15 21:54:28]
DimonS - Posts: 19
+1
[2018-06-15 23:28:41]
Sierra Chart Engineering - Posts: 104368
In response to post #9, there is just no way we can possibly handle this. We have hundreds and hundreds of items to do. All very difficult. When we give an estimate of two years, even then we are concerned that is too soon.


We do not foresee getting to this until the end of next year to be on the safe side. And who knows whether that even ends up being true.

And these performance improvements we talk about, do you know how much time we spend on that? That is just like a half day of work in total. It is nothing. It is working a little item in among hundreds of tasks.

So no, this is simply not even remotely close to true:
I notice that you are spending quite a bit of time lately on improving the performance of the Volume by price study

Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2018-06-17 08:45:39
[2018-06-17 10:01:52]
Sierra Chart Engineering - Posts: 104368
Our prior response is based on a comprehensive expansion of ASCIL from start to finish. This has not started.


But thinking about this, what we can do in the short term is add these functions or similar:

  int (SCDLLCALL* GetChartStudyInputInt)(int ChartNumber, int StudyID, int& r_IntegerValue);
  int (SCDLLCALL* SetChartStudyInputInt)(int ChartNumber, int StudyID, int IntegerValue);
  int (SCDLLCALL* GetChartStudyInputFloat)(int ChartNumber, int StudyID, double& r_FloatValue);
  int (SCDLLCALL* SetChartStudyInputFloat)(int ChartNumber, int StudyID, double FloatValue);

  int (SCDLLCALL* RecalculateChart)(int ChartNumber);
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2018-06-17 15:03:03]
dtl-saw - Posts: 79
This what I was hoping for, setters and getters - something simple for manipulating the VbP inputs.
I'm sure whatever you come up with will work out great.
Please let me know once the functions are done and ready to use.

Regards
[2018-06-18 02:50:28]
Sierra Chart Engineering - Posts: 104368
Assuming there are no complications these particular functions should be out by the end of this week.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2018-06-22 21:43:01]
dtl-saw - Posts: 79
Can you provide the SC version number that has the updated functions from post #14, thanks
[2018-06-22 21:57:05]
Sierra Chart Engineering - Posts: 104368
This is version 1768. The functions are present, and implemented. But they are not tested or documented.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2018-06-27 23:46:06]
dtl-saw - Posts: 79
Just tried the new int and float getter functions for VbP study out in SC version 1771 and it's not working.
The function call returns a zero and the resulting reference assignments are zero.

In the chart I have a VbP study with ID:1
I'm trying to get the input values in the VbP study ID:1 for start_time=(IN:37) and Number of Bars=(IN:36)

I've tried using both 0 and 1 for study ID:1 in case you're using zero base for function calls.
I've tried using both 35 and 36 for (IN:36) and both 36 and 37 for (IN:37) again in case you're using zero base for function calls.
All combinations print zeros in the message log -> see code included below

This seems straight forward so can you verify on your end and see if the functions work for you?
Thanks

function test code:

int vbp_return = 0;
double& r_vbp_start_datatime = sc.PersistVars->Doubles[0];
int& r_vbp_numbars = sc.PersistVars->Integers[0];
int study_ID = 1;
int numbars_inputIndex = 36;
int start_time_inputIndex = 37;

// chartnum, studyID, InputIndex, &double
vbp_return = sc.GetChartStudyInputFloat(sc.ChartNumber, study_ID, start_time_inputIndex, r_vbp_start_datatime);

SCString Buffer;
Buffer.Format("VbP start datetime: %6.4f, ret val = %i", r_vbp_start_datatime, vbp_return);
sc.AddMessageToLog(Buffer, 0);

vbp_return = sc.GetChartStudyInputInt(sc.ChartNumber, study_ID, numbars_inputIndex, r_vbp_numbars);

Buffer.Format("VbP num_bars: %6.4f, ret val = %i", r_vbp_numbars, vbp_return);
sc.AddMessageToLog(Buffer, 0);



Message Log Output:

Software version: 1771 64-bit | 2018-06-27 18:39:09
Usage end date: 2018-07-08 | 2018-06-27 18:39:09
Enabled for: Advanced Features. | 2018-06-27 18:39:09
Enabled for: Advanced Features 2. | 2018-06-27 18:39:09
Enabled for: Sierra Chart Historical Data Service. | 2018-06-27 18:39:09
Enabled for: Sierra Chart Real-Time Exchange Data Feed. | 2018-06-27 18:39:09
Enabled for: INDEXES_DATA_BARCHART | 2018-06-27 18:39:09
Enabled for: CME with Market Depth for nonprofessional Trading accounts | 2018-06-27 18:39:09
Enabled for: U.S. Equities (NYSE, NASDAQ, AMEX, BATS) | 2018-06-27 18:39:09
Enabled for: BATS (NYSE, NASDAQ) | 2018-06-27 18:39:09
Received 1 data feed usernames. | 2018-06-27 18:39:09
Allow Support for Sierra Chart Data Feeds is enabled. | 2018-06-27 18:39:09
Current selected Data/Trading service: SC Data - All Services | 2018-06-27 18:39:09
Chart Update Interval: 500 | 2018-06-27 18:39:09
Time Zone: -05:00:00 (CST-06CDT+01,M3.2.0/02:00,M11.1.0/02:00) | 2018-06-27 18:39:09
2018-06-27 18:39:08 Local computer time | 2018-06-27 18:39:09
2018-06-27 23:39:08 Local computer time in UTC | 2018-06-27 18:39:09
2018-06-27 18:39:08 Local computer time in SC Time Zone | 2018-06-27 18:39:09
2018-06-27 23:20:46 Server time in UTC | 2018-06-27 18:39:09
Local computer UTC time and Server UTC time difference: 1 seconds. | 2018-06-27 18:39:09
OS Version Number: 6.1 | 2018-06-27 18:39:09
Locale Setting: C | 2018-06-27 18:39:09

ESU18 [C] 15 Min #2 | Reloading chart. | 2018-06-27 18:39:22
Chart: ESU18 [C] 15 Min #2 | Study: Trade Plan2 | VbP start datetime: 0.0000, ret val = 0 | 2018-06-27 18:39:24
Chart: ESU18 [C] 15 Min #2 | Study: Trade Plan2 | VbP num_bars: 0.0000, ret val = 0 | 2018-06-27 18:39:24
Chart: ESU18 [C] 15 Min #2 | Study: Trade Plan2 | VbP start datetime: 0.0000, ret val = 0 | 2018-06-27 18:39:24
Chart: ESU18 [C] 15 Min #2 | Study: Trade Plan2 | VbP num_bars: 0.0000, ret val = 0 | 2018-06-27 18:39:24
[2018-06-29 13:42:06]
Sierra Chart Engineering - Posts: 104368
The issues are resolved. We just had not yet had a chance to do any testing and wanted to let you know the functionality was done.

Update to 1772. And there is this example:
/ACS_Source/studies2.cpp/scsf_ChangeStudyInputExample
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2018-06-29 13:43:12
[2018-06-29 21:04:28]
dtl-saw - Posts: 79
I'm able to get this new function to work as expected for the SC study "moving average - Simple"
The getter function correctly assigns the moving average length to my reference.
But when I try to use the getter function to retrieve input values from the "Volume by price" VbP study my reference value is zero.
The return value of the function is '1' so I know it at least found the study.

Do you have to do anything special for the VbP study inputs?
[2018-06-30 22:20:47]
Sierra Chart Engineering - Posts: 104368
This will be fixed in the next release. There was still a problem with the functions for getting and setting float values for study inputs.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2018-06-30 22:53:20]
dtl-saw - Posts: 79
I really appreciate that you are adding these functions as this takes customization to the next level.
Being able to have ACSIL control over all of the built in studies is a game changer.
[2018-07-01 10:57:21]
Sierra Chart Engineering - Posts: 104368
Also, there was another issue when trying to get/set inputs on what are considered the non-ACSIL studies like the volume by price study. We are resolving it now. We will have a new release out in about 1 hour.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2018-07-01 10:57:33
[2018-07-01 12:47:56]
Sierra Chart Engineering - Posts: 104368
We have released version 1774.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2018-07-01 13:23:33]
dtl-saw - Posts: 79
I have an issue when using sc.GetChartStudyInputFloat() function with "volume by price" study and getting date values.
I assign the date value return to a double and get the proper year, month, day but the hours, minutes, seconds data is not correct.
In other words it looks like an integer value is assigned to my float reference from sc.GetChartStudyInputFloat()
All of the decimal values in the assignment are zero.

Please have a look and verify on your end
[2018-07-01 13:37:54]
Sierra Chart Engineering - Posts: 104368
Which specific Input are you referring to because none of the Volume by Price study Inputs contain both the date and time. Either a Date or a Time value. So it would make sense in the case of a date that the time component is all zero.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2018-07-01 13:46:22

To post a message in this thread, you need to log in with your Sierra Chart account:

Login

Login Page - Create Account