Support Board
Date/Time: Tue, 13 May 2025 15:52:45 +0000
Sierra Chart Now Supports Building Custom Chart Bars Efficiently in ACSIL
View Count: 8199
[2017-11-07 11:57:58] |
|
Version 1638 of Sierra Chart now supports building custom chart bars efficiently using ACSIL. There is no formal documentation yet and we will not be providing any support for this at this time. If you cannot comprehend the example, then do not use it and do not ask us questions here. This is only for use by competent developers. For an example, refer to /ACS_Source/ACSILCustomChartBars_Example.cpp 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 |
[2017-11-07 17:37:56] |
gomifromparis - Posts: 244 |
Getting the "incorrect URL when getting files list to download" in the updater
|
[2017-11-07 17:53:47] |
|
Try again. We removed version 1638. The current version is now 1639.
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 |
[2017-11-08 09:56:48] |
DabbaDo - Posts: 148 |
1. Is there any way to set RenkoOpen and RenkoClose on each bar? 2. The interface has GetPersistentInt/Float/Double. GetPersistentPointer would be nice. 3. As with CustomChart, it seems impossible to set/display subgraphs on the study. Is that correct? Cheers, Dale |
[2017-11-08 17:53:39] |
|
1. Not currently but we can add that capability. 2. Possibly but we would be afraid of this being improperly used due to the increased complexity since there are two functions involved and one of them runs on another thread. 3. Yes this is true. 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: 2017-11-08 17:54:16
|
[2017-11-08 22:07:58] |
DabbaDo - Posts: 148 |
I crash when I use ChartBarInterface.GetPersistentInt/Float/Double. All three Internal_GetPersistentXXX functions have 0x00000000 addresses. The other internal functions are set okay. v1639 Cheers, Dale |
[2017-11-08 23:05:09] |
|
OK looks like we did not set those pointers. Checking on this. 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 |
[2017-11-11 23:10:54] |
|
1. Is there any way to set RenkoOpen and RenkoClose on each bar?
This will be supported by this new ACSIL variable in the next release:sc.AllocateAndNameRenkoChartBarArrays 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: 2017-11-11 23:11:13
|
[2017-11-13 11:33:45] |
DabbaDo - Posts: 148 |
Thank you, I look forward to trying sc.AllocateAndNameRenkoChartBarArrays. These custom bars are wonderful, a great addition to your platform in my opinion. Attached is a favorite bar type of mine, for what it's worth. You can safely ignore it. It's likely that I'm doing some things incorrectly. Some issues: 1. In the studies dialog, when I Remove a custom chart and Add another then Apply the chart is not reloaded. Duplication steps: ---a. Add Custom Study "Custom Chart Bars Example" with the default 1000 volume. Exit the studies dialog. ---b. Open the studies dialog. Remove Custom Chart Bar Volume=1000 then Add Custom Study "Custom Chart Bars Example" with 2000 volume. Apply or OK. Notice the bars don't change (debugger shows the CustomChartBarBuildingFunction isn't called.) 2. Maybe not a bug: sc.AreTimeSpecificBars() comes back true if the scid bars are 1s or 1m etc. Sometimes other studies need to know if the base bar is a tick bar, a time-based bar, etc. 3. Nice-to-haves: ---a. A flag in ChartBarInterface that is true on the first call after sc.FlagToReloadChartData. Currently I'm tracking the CurrentBarIndex to know when I should re-initialize state. Perhaps there is a better way and I just missed it. ---b. GetPersistentInt64 ---c. GetPersistentSCDateTime Cheers, Dale |
![]() |
[2017-11-14 17:17:32] |
|
We will work through this. Just give us a couple of days.
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 |
[2017-11-15 00:54:41] |
|
This will be out in the next release. Except for item 2 which is just how this is. 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 |
[2017-11-15 05:25:56] |
|
One thing we want to say, that in the next release of Sierra Chart, it is the custom chart bar study itself which will be responsible for flagging to reload the chart even initially when the study is added to the chart. The code example has been updated to demonstrate how to do this. 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: 2017-11-15 17:17:17
|
[2017-11-15 13:49:09] |
DabbaDo - Posts: 148 |
That was a big improvement. To close the loop for anyone who wants it, attached is the updated version. Sierra Chart is super! Thank you again. Dale |
![]() |
[2017-11-15 18:25:39] |
|
Here are the instructions to use this: https://www.sierrachart.com/index.php?page=doc/BuildCustomStudiesDLL.html 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 |
[2017-12-21 08:46:04] |
gomifromparis - Posts: 244 |
Hi, Could you publish a quick example of the IsInsertFileRecordsProcessing using a Range or a Renko bar? No problem if you can't, I'll fiddle around. My use case is building a variable Renko bar, I've calculated that because of the taker fees on Bitmex, my tick size needs to be equal to 0.005% of the BTC price for my reward to be at least equal to my risk (ie 8 point TickSize with a 16000 BTC) So instead of adjusting the Ticksize all day, it will be simpler to use a variable renko. Thanks |
[2017-12-23 18:41:49] |
gomifromparis - Posts: 244 |
So I did some fiddling and could not understand how the bar splitting works to manage the gaps. I have something like s_IntradayRecord& record = ChartBarInterface.NewFileRecord; if (ChartBarInterface.IsNewChartBar) if (record.Close > whatever condition) // we have a gap here on this tick { ChartBarInterface.InsertNewRecord = 1; ChartBarInterface.NewRecordToInsert = record; // resend the tick } But the tick is not resent and IsInsertFileRecordsProcessing is never true. Any suggestion ? Date Time Of Last Edit: 2017-12-23 18:43:52
|
[2017-12-24 01:16:19] |
|
We have to put together an example. Not sure how quickly we can get to that though.
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 |
[2017-12-24 17:00:35] |
gomifromparis - Posts: 244 |
OK thanks, could please explain as well how the session gap is managed, in my case BarHasBeenCutAtStartOfSession seems always false.
|
[2017-12-26 00:31:51] |
|
We are working on a Range bars example and also demonstrates BarHasBeenCutAtStartOfSession. We hope this will be ready by morning. 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 |
[2017-12-27 01:06:55] |
|
Have a look at the new Range bars example in /ACS_Source/ACSILCustomChartBars_Example.cpp in version 1676. It is a simplified example of an implementation of Range bars. 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 |
[2017-12-27 11:17:24] |
gomifromparis - Posts: 244 |
I tried it, but like my own code, it doesn't fill the gaps See DAX : when market is liquid it's ok we get 10 range bars, but on the start on the march contract, with big gaps, they are not filled. The debugger also shows that IsInsertFileRecordsProcessing is never true. Anything I need to set somewhere ? Date Time Of Last Edit: 2017-12-27 11:17:34
|
![]() |
[2017-12-27 18:41:06] |
|
In regards to filling gaps, you either need to use one of the Gap Fill options documented here: Chart Settings: Intraday Chart Bar Period >> Gap Fill (Chart >> Chart Settings >> Bar Period >> Intraday Chart Bar Period Settings menu) Or you need to just fill the gaps by adjusting the high and low values in the custom chart bar building function. The debugger also shows that IsInsertFileRecordsProcessing is never true. 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 |
[2017-12-27 22:20:42] |
gomifromparis - Posts: 244 |
I tried the 1677, but it's still not behaving like expected. Now IsInsertFileRecordsProcessing is always true, on every call of the function ; it appears some bars do get created, but the chart still does not have the correct look of the standard gap filled Range chart. |
![]() |
[2017-12-27 23:03:39] |
|
Now IsInsertFileRecordsProcessing is always true, on every call of the function ; We apologize for this. We had not done any testing related to the variable. We have now and it is corrected.We have now released a new revision of 1677. Update again. Although the version will remain the same. Regarding gaps, we do not have much time to look at that now, but see if there is any difference. 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 |
[2017-12-27 23:36:13] |
gomifromparis - Posts: 244 |
It seems ChartBarInterface.InsertNewRecord = 1; is missing in the sample. The chart is starting to add bars, but still some issues. I see the bars created in IsInsertFileRecordsProcessing being sent once, so they arrive in IsDeterminingIfShouldStartNewBar, and then in IsFinalProcessingAfterNewOrCurrentBar, but then there is a problem, IsFinalProcessingAfterNewOrCurrentBar is sent one more time instead of IsInsertFileRecordsProcessing , so the bar splitting process can't continue. So if we add no bar, we have IDISNB IFPANOCB IIFRP IDISNB IFPANOCB IIFRP IDISNB IFPANOCB IIFRP but if we create a new bar in the underlined IIFRP, we get the sequence IDISNB IFPANOCB IIFRP IDISNB IFPANOCB IFPANOCB IDISNB IFPANOCB IIFRP IDISNB IFPANOCB IIFRP but I think we may be close.. Date Time Of Last Edit: 2017-12-27 23:36:42
|
To post a message in this thread, you need to log in with your Sierra Chart account: