What Is New
Log of Changes and Improvements to Sierra Chart
This list contains major items of development, items which are notable, and changes and additions which users need to be informed about.
This is not a comprehensive changes and additions log. It only represents less than 25% of the actual development performed every day. There are not version notes for each version. The main Sierra-Chart documentation is updated as needed relating to the changes and additions.
In addition to the below listed items for each version, there are also various low-level improvements, issues resolved, and small additions that a release has which are not listed.
- Improvements with Advanced Custom Study Interface and Language:
- We have made many major improvements to the Advanced Custom Study Interface and Language (previously called Custom DLL Study Interface). The objectives of all the improvements and changes described below is to provide a safe and easy environment to create custom studies and systems for Sierra Chart. If you have worked with the languages with other charting programs or other languages, you definitely will be able to easily create high performance and advanced custom studies and systems for Sierra Chart.
- We have adopted a new compiler: The Open Watcom C/C++ compiler. It generates extremely fast code. We have provided step-by-step instructions to use it and included an Open Watcom Project file with Sierra Chart you can open to immediately get started writing studies. Everything is already pre-configured with this project. The code provided along with the project includes skeleton functions to make it easy to quickly create new Advanced Custom Studies.
- Many new functions and variables have been added to the Advanced Custom Study Interface. Refer to the Advanced Custom Study Interface Variable And Function Members page for updated documentation.
- Safe arrays have been implemented in place of the old standard C arrays. With safe arrays, it is impossible for a study or system to cause instability in Sierra Chart if it violates the bounds of an array. Other safety features have been added. Recently developed code that is recompiled with the sierrachart.h header will automatically take advantage of these new safety features. In order to take advantage of the new safe arrays with the interface member functions, you will need to make some changes. Please review our examples and updated documentation for guidance on how to do this. Read further below to see a list of necessary changes.
- There have been some changes in the way that text strings, such as Input and Subgraph names are now set. Your code should still compile without any changes unless you have done something which is programmatically improper.
- Your study functions can be easily added to the chart without defining the SCDLLDetails function in your DLL.
- Dates and times have been changed to work as a single SCDateTime value. SCDateTime values supports 1-second time resolution.
- The studies.cpp file that is supplied with Sierra Chart has been fully updated to reflect all of these changes. Look at studies.cpp to see how everything should look and be used.
- Required Changes:
- Refer to the Advanced Custom Study Interface Variable and Function Members page for updated documentation.
- Any pointers to arrays need to be replaced with the type SCFloatArrayRef. If you had a pointer to one of the sc.BaseDataIn arrays, those need to be changed to a SCFloatArrayRef type. If you had a pointer to a Subgraph data array, those need to be changed to a SCFloatArrayRef type. If you use the sc.GetChartArray or sc.GetStudyArray functions, you will need to make this change for those as well.
- Some functions that use arrays, such as the moving average functions and the functions for getting arrays, need to have the ArraySize parameter removed. ArraySize is no longer needed because the new safe arrays have the member function GetSize() which returns the size of the array.
- sc.DateOut and sc.TimeOut do not exist any more. If you used these, you will need to update your code to use the sc.DateTimeOut array.
- Functions that are used with the syntax like: (*sc.Function)() must be changed to use the syntax like: sc.Function().
- The sc.SubGraphDataOut array is no longer supported. Use the sc.Subgraph.Data array.
- The sc.SubgraphName array is no longer supported. Use the sc.Subgraph.Name text strings.
- String functions (like strlen) can not be used on the new c_SCString members. Use member functions of the c_SCString class.
- Recommended Changes (Required in current Sierra Chart versions):
- Do not use sc.TimeOfLastFileRecord. Use sc.DateTimeOfLastFileRecord.
- Rename your study functions to begin with scsf_. Functions that are named with the prefix scsf_ must have a sc.SetDefaults code block at the beginning of the function. Functions that are named with this prefix can be taken out of the SCDLLDetails function if you used one. These functions will be automatically detected by Sierra Chart and be made available through the Add Custom Study interface. sc.GraphName needs to be set when sc.SetDefaults is set to 1 (TRUE) because you will be removing this setting from the SCDLLDetails function.
- Make use of the new, simpler method of defining study functions. Study functions that were defined like extern "C" __declspec(dllexport) void MyStudyFunction(s_sg& sc) should be changed to: SCSFExport scsf_MyStudyFunction(SCStudyInterfaceRef sc). This makes the code easier to read and ensures compatibility.
- Use SCDLLName to set the name of the DLL containing your functions and ensure that the DLL will will contain a version number to work with Sierra Chart. Otherwise, your study functions cannot be used.
- Once you rename all of your study functions to use the scsf_ prefix and use SCDLLName, you can completely remove the SCDLLDetails function from your CPP file.
- The Sierra Chart main window now has optional scroll bars that appear when you move chart windows beyond the main window's edges. This allows you to widen your workspace. You can then use the scroll bars to move charts in and out of view. To enable this option, select Global Settings >> General Settings >> Enable Workspace Scrolling
- Added the Fill Rectangle Top and Fill Rectangle Bottom subgraph draw styles. These work the same as the Fill Top and Fill Bottom draw styles, but they fill the entire bar from the top to bottom rather than following the contour.
- You can also use a single fill style if you wish to fill to the edge. That is, only applying the Fill Top style to a subgraph will fill from the subgraph to the bottom of the region.
- Updated the TD Ameritrade client to accommodate a change they made in the login process. If you use TD Ameritrade you will need to upgrade to this version.
- Corrected minor issues with IB historical data downloading relating to changes made in version 140 to download the number of trades per record. Corrected a problem with DTN IQ Feed historical data downloading where not all missing data from a chart was downloaded in some cases. Corrected a very minor issue with the TPO/Volume Profile study.
- Added the Study Overlay - OHLC study.
- Improved color coding for the SideWinder study.
- Users with expired accounts can still log into Sierra Chart with limited access. You will be restricted to certain historical symbols and cannot connect to a data feed.
- Made additional improvements with downloading IB backfill relating to changes made in version 139 to adapt to changes IB made to their system.
- The number of trades per data record from IB backfill is downloaded.
- Corrected a problem with TD Ameritrade integration where real-time updates for indexes were not being processed.
- Corrected a bug with opentick where the connection would time out after 60 minutes even though data was being received.
- Modified requests for IB backfill to work around backfill instability.
- Added an adjustable backfill timeout. This can be found by going to File >> Data/Trade Service Settings when using the IB service.
- The TPO/Volume Profile study End Date input is now disabled by default. This corrects a potential problem where an end date could cause a chart not to update under certain conditions.
- Corrected a bug with the Pivot Points study where the pivots would not show up in special cases when the prior day had no data.
- Added the T3 study.
- Corrected a problem that potentially could occur when downloading data where data may be out of order in the charts. Please upgrade ASAP if you're using version 135-136. If you see any data in the chart where the date and times are out of order, there are two solutions. You can go to Edit >> Export and Edit to view the data and delete or reorder any out of order data. For more information on this, see the Exporting and Importing page. Or you can delete and refresh the out of order data by going to Edit >> Edit Data. For more information on this, see the Intraday Data Editor page. If there is any out of order data, it is most likely to be at the beginning of the file.
- Corrected a problem where the displayed starting time of bars may be inaccurate when using odd bar periods.
- Added the "Moving Average-Hull" study.
- Corrected a problem with the Chart Calculator tool not showing the time difference.
- Other minor issues resolved.
- Corrected a problem where the price bars were not colored to the global color settings.
- Corrected a problem where the windows were not listed on the bottom of the Window menu.
- All of the Woodies CCI trading club studies are now built in for easy access. To use these, select the "Woodies Built-In" Study Collection from the Analysis menu. The Woodies panel will also be made available shortly as a built-in professionally programmed study. The advantage in using these studies is they provide greater efficiency due to professional programming. They also use safe arrays to eliminate any possible potential for instability. Very shortly our custom DLL study interface which has been used for the Woodies studies will be enhanced to provide safe arrays for custom studies so they cannot cause any instability due to data array access errors.
- Added 16 float variables and 16 integer variables to the custom studies API. These variables can be used for persistent data storage between function calls. However, they are not saved to disk unlike the StorageBlock.
- A new dialog has been added to the Volume By Price study making it easier to configure.
- Corrected a bug with IB where in certain unusual cases, Historical Intraday Data Downloading would be skipped.
- Corrected a problem with the Chart Replay feature where the replay was canceled after reloading the chart during a paused state.
- The TPO/Volume Profile Split and Merge function has been improved to merge together separate TPO Periods as well. To merge 2 periods, double click between 2 TPO periods. After 2 periods have been merged, you can split them back apart by splitting the TPO chart at the beginning of the 2nd period. To do this, double click on the TPO letter which represents the first time increment for the 2nd day.
- A new Reset TPO Chart command has been added to the Chart menu. This will reset all the split/merged TPO's back to normal.
- Added the SideWinder and Chop Zone Indicator Studies. These are now built in studies, they can be found by selecting Analysis >> Studies on the menu.
- Corrected a problem from a recent release with the DTN IQ Feed integration where the processing of data was incorrectly handled.
- Corrected a problem with the Adjust for Split function, which caused Volume to be set to 0 in Intraday Charts.
- TPO/Volume Profile charts now support Splitting/Merging TPO's. To do this, simply double click on a TPO letter to split a TPO chart from that point, or double click in between 2 already split TPO charts to merge them back together. Note that although any tool can be used while double clicking, it is best to use the Pointer or Crosshair tool so that no accidental lines/text are drawn.
- Corrected a problem with the True Strength Index (Ergodic) study which made the study display improperly on updates.
- Corrected a DTN IQ Feed time-stamping problem. This problem was only from a recent pre-release. This problem could have caused charts not to update.
- Corrected a problem that could have caused an abnormal shutdown while downloading historical data when using an invalid symbol with the TransAct service.
- Corrected a problem with TPO and Volume Profile Charts that did not correctly update the TPO Chart when specifying the Start of Day.
- Corrected a problem with the UseTool DLL function which may have prevented some lines/texts from being added.
- Added a countdown field to the chart header. This displays the remaining time/ticks/volume/range until the next bar. To use this, go to the Global Settings >> Customize Chart Header window.
- The port number used when downloading historical intraday data when using the TransAct service, has been changed. Some ISPs were blocking the old port number. This prevented the downloading of historical Intraday data and would cause a timeout error. The port is now 10149.
- The Pivot Point study has been modified to support R4 and S4 lines.
- Added 2 new formula types to the Pivot Points Study. The first calculates Open Price Pivot: (Yesterday's High + Yesterday's Low + Current Open + Current Open)/4. To use this formula, set the Formula Type Input to 3. The second calculates pivot points using the standard classical formula's for R3 [PivotPoint + 2 * (High - Low)] and S3 [PivotPoint - 2 * (High - Low)]. To use this formula, set the Formula Type Input to 4.
- Added a new UseToolEx function for custom DLL studies. Documentation will follow shortly. Refer to the UseToolExample function in studies.cpp.
- Corrected a problem with the TPO and Volume Profile study which would cause an abnormal shutdown when the study was used.
- All of the Pivot Points studies have been combined into a single study. You can select the levels you want to display by going to the Subgraphs tab in the Study Settings window for the study. Change the Draw Style to Line for a level to display the line. Or set the Draw Style to Hidden to hide a level.
- Modified the True Strength Index study based on Bill Blau's ergodic TSI to support the Signal Line MA, Oscillator, and a Multiplier. For more information see the documentation page.
- A new option has been added to the General Settings Window. You are now able to use any Study Collection as the Default. This setting will automatically assign the selected Study Collection to all new charts. By default, the last Study Collection used before this release of Sierra Chart will be selected. If you have previously defined a study collection named Default, then you need to select it from the list and enable the Use Default Study Collection option to use it.
- Added support for the opentick service.
- The Volume by Price study has been significantly modified to display on a regular price chart. Additionally, the profile period can now be specified using Time (fixed period), Number of Bars (fixed width), or Chart Width (dynamic width).
- The TPO and Volume Profile study has been changed so that a user can now specify what is considered the start of a day. This is particularly useful when charting evening sessions, one could specify the start of a day to be something like 17:00 and TPO/Volume Profile charts would be in increments from 17:00:00 to 16:59:59.
- The Only Charts in Chartbook in the Chart menu is now a global member. This means that all charts in any chartbook share the same setting.
- When the Only Charts in Chartbook option is on, and you use the Previous File (-) or the Next File (+) commands, the current symbol is remembered so you can return to it after iterating through all of the symbols in the chartbook.
- Corrected a problem with the Study/Price Overlay study, Study Moving Average study, GetStudyArray DLL function, and GetStudyArrayFromChart DLL function caused by changes made in pre-release version 119.
- An option has been added to the "Chart Settings" window: Load Weekend Data. When the option is disabled, weekend data is not loaded. This also applies to real-time chart updating; therefore, if the option is disabled, Sunday night trading is blocked from the chart.
- Point and Figure charts are now implemented as a study. This study can be found by selecting Analysis -> Studies on the Menu. The study is named Point and Figure Chart. Your existing Point and Figure Charts will open up correctly with this new version. What you will find is that the Point and Figure Study will be automatically added to your chart.
- A scaling problem with Point and Figure Charts from a recent release has been corrected. This problem may have caused additional space to be shown above or below the chart.
- If you are using the Pivot Studies or the Previous Day OHLC study, please verify the input "Use this Intraday Chart" is set as you require.
- The custom DLL study API has been expanded to allow custom chart creation. Several new members have been added to the s_sg structure. For an example of a Point & Figure custom chart, refer to the PointAndFigureChart function in the Custom Chart.cpp file supplied with Sierra Chart.
- Improvements with historical intraday data for TransAct:
- Corrected a problem from a recent pre-release where the first 50 minutes from the last date in your chart was not downloaded.
- Historical data is now compressed which means historical downloads should take less time, up to three times faster.
- The maximum number of days to download for historical intraday data is now controllable. This can be found by selecting Global Settings >> Data/Trade Service Settings on the menu.
- The download unit now is based on the Intraday Data Storage Unit setting in Sierra Chart. Previously, data has been downloaded in units of 2-seconds of trading. So now, if your Intraday Data Storage Unit is set to 60 seconds, data will be downloaded in 60-second units.
- Installed a backup historical intraday data server. This avoids any possibility of gaps in the data in case the primary server is unavailable.
- Collectively these improvements along with the already high-reliability of the historical intraday data service for TransAct, makes this historical intraday data service the most reliable one available.
- If you are a futures trader and looking for an alternative to IB backfill, we recommend using the TransAct service.
- In the Intraday Editor, when you press the Delete and Refresh... button and you are deleting less than 10 minutes, no confirmation is shown and the editor is closed.
- The Spreadsheet for the Stochastic Crossover System example (found on the Analysis menu) now shows a simple method for calculating the Profit or Loss of your system in order to allow you to back-test it. Refer to cells P3 and Q3 for the formulas.
- Corrected a bug in Renko, Kagi, Three Line Break charts that would cause charts to display extra bars during updates.
- Added a command in the Edit menu to simply Export an intraday file to a .txt. file without opening the text file in the text editor.
- Added the option to display VWAP lines historically.
- Added a new version of the Demand Index study that follows the more commonly used formula. The existing Demand Index study has been renamed to Demand Index (original).
- The number of study collections listed per menu column now depends on the screen resolution.
- A "Cancel Active Backfill Requests on Timeout" option has been added to the Data/Trade Service Settings window for IB. When this option is disabled, Sierra Chart will continue to try to make queued up backfill requests even if there was a time out. Use this option with caution because if the IB server continues to not respond, and our experience is that it will not, then this will lead to extensive delays with chart updating.
- Corrected a bug where Time and Sales data wasn't stored if the Store Bid & Ask data option was not checked.
- Daily data downloaded from IB now only covers the regular trading hours instead of all hours. This corrects a problem where the date of the daily bar may have been one day earlier. This earlier date referred to the starting date of the prior evening session.
- Support for Ameritrade has been added. Streaming data and Intraday Charts are now supported. Trading through Ameritrade is coming shortly.
- ADX and ADXR are no longer rounded to integer values. The fractional values are now shown as well.
- The Pivot Points studies have a new input named: Use this Intraday Chart. When this input is set to Yes , a daily chart is not required and the necessary values are determined from the Intraday chart itself.
- The Previous Day OHLC study has been reworked and now encompasses Open, High, Low, Close, HL Average, HLC Average, and OHLC Average all on the same study. Additionally, it also has the Use This Intraday Chart option as explained above.
- Heikin-Ashi Study has been added.
*Last modified Friday, 02nd March, 2018.