Support Board
Date/Time: Wed, 27 Nov 2024 00:36:59 +0000
[Programming Help] - Using an external Library
View Count: 2204
[2021-12-02 23:11:51] |
KylieV1618 - Posts: 67 |
Hi, Can you show me the basics of how to use a library inside of a Sierra Chart plugin? Using Remote Build option? I want to use SDL_2, and SDL_2_MIXER. The library contains 2 header files, which then reference like 8 or 9 dll files. Ive tried importing the header files, and including all the dlls in the Data folder. That didn't work. Ive tried importing all the seperate dlls seperately, that "worked", as in....it compiled with no errors. But as soon as I tried to use the library or access any of the functions that are supposed to be available, I got an error. So could you please guide me through how to add this library to a plugin I want to program? Date Time Of Last Edit: 2021-12-02 23:13:11
|
[2021-12-02 23:58:15] |
John - SC Support - Posts: 36309 |
You need to build your study locally to do what you want to accomplish. The instructions for this can be found in these overall instructions for how to build a custom study: Advanced Custom Study Interface and Language (ACSIL): Step-By-Step Instructions to Create an Advanced Custom Study Function For the most reliable, advanced, and zero cost futures order routing, use the Teton service: Sierra Chart Teton Futures Order Routing |
[2021-12-03 00:48:43] |
KylieV1618 - Posts: 67 |
Yeah Im not well versed in C++ and I cant seem to get Visual Studio to do/build anything. Always just get errors and stuff. Don't know enough to debug. Thought it might be a bit easier by using Remote Build. But I guess Ill have to do the drudgework of setting up my environment correctly. Ugh. The worst part about development is that haha |
[2021-12-03 15:16:06] |
John - SC Support - Posts: 36309 |
There is a post somewhere in this forum that users posted that gives information on how to put together Visual Studio to build a Sierra Chart study. Try searching for "Visual Studio" or items along those lines to see if you can find it.
For the most reliable, advanced, and zero cost futures order routing, use the Teton service: Sierra Chart Teton Futures Order Routing |
[2021-12-03 21:30:47] |
KylieV1618 - Posts: 67 |
I found the post. But it didnt really help mw. my question is. I cant even build anything. I dont know how to build a file. I load a file into Visual Studio.cpp and the Build menu just says "Run Code Analysis on Solution", and clicking it does nothing. And when I try to build through sierra chart with Build With Visual C++ Release
then it says it cant find any of the files required.Even though I clearly have Visual Studio 2019 installed and working. (although I guess Building doesnt work??) I have VisualCCompile.bat downloaded and in the ACS_Source folder. The other erros say it cant find vcvarsall.bat. (Visual studio 14? which I dont have) And then all this other crap about environment variables, none of which it can find. NDEBUG USRDLL_d Zc.inline etc etc etc |
[2021-12-04 18:35:30] |
Sierra Chart Engineering - Posts: 104368 |
Update Sierra Chart, it has support for the newest version of Visual Studio. Instructions: Software Download: Fast Update The questions you are asking in post #1 are not within the scope of our support. 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 |
[2021-12-05 06:40:32] |
Bet_More_Tim - Posts: 21 |
@KylieV1618 not sure if this will help, but this link here is something sierra used to have up on their website, not sure if it's up somewhere now or not, but I'll also link pictures for setting up visual studio such that you can create and compile sierra studies from the same place. https://web.archive.org/web/20170705060950/https://www.sierrachart.com/index.php?page=doc/UsingVisualCPlusPlus.php <-- archived sierra page https://imgur.com/a/BnbF5wY <-- should have multiple pictures showing setting up VS2019 Following the steps in the pictures there, writing your .cpp files script, and then build solution btw I believe any and all other .dll you want to include should be placed in the ach_source folder, since that is our "include additional directories" selection... then after building the solution, all the things should then be in the sierra/data file, and you shouldn't have to do anything else other than open a chart and add custom study. Btw sierra might have to be restarted when you build a solution and it's open, in order for your new study to show up. Hope this helps any Date Time Of Last Edit: 2021-12-05 06:40:46
|
[2023-08-12 04:35:20] |
Trade Dojo - Posts: 45 |
Also building study with Visual Studio, I have problem with cleaning the old DLL access denied. It's very inconvenient to restart SC every new compile. LINK : fatal error LNK1104: cannot open file 'C:\SierraChart\Data\testDLL.dll' I have sc.FreeDLL = 1 in the code from the get go. Any one has solution for this? Date Time Of Last Edit: 2023-08-12 04:37:44
|
[2023-10-13 15:18:17] |
DayTraderEsad - Posts: 121 |
@User653970 - you should not have to restart SC everytime. Just use the remote build and study will be available in your custom studies....also add this as the stop of your code SCDLLName("ADD A UNIQUE NAME HERE");
|
[2023-10-13 15:21:31] |
DayTraderEsad - Posts: 121 |
Here is jsut a quick example on what I mean --- I didnt add the entire study, but this is how I have all of mine start #include "sierrachart.h" SCDLLName("Custom Close Study"); SCSFExport scsf_MidpointMomentumShift(SCStudyInterfaceRef sc) { if (sc.SetDefaults) { // Set default study settings here. sc.GraphName = "Midpoint Momentum Shift"; sc.StudyDescription = "The Midpoint Momentum Shift study identifies potential shifts in market momentum by comparing the close of a bar with the midpoint of both the current and previous bars." "<p>" "1. **Green Arrow (Original Condition)**: This plots below the price bar when the previous bar's close is below its midpoint and the current bar's close is above its midpoint. This might suggest a positive momentum shift." "<p>" "2. **Red Arrow (Opposite Condition)**: This plots above the price bar when the previous bar's close is above its midpoint and the current bar's close is below its midpoint, suggesting a potential negative momentum shift." "<p>" "The study allows for adjustments in the arrow's distance from the bars through tick offsets, making it adaptable to various chart resolutions and preferences."; sc.GraphRegion = 0; // Same region as price chart sc.ValueFormat = 0; sc.Subgraph[0].Name = "Original Condition"; sc.Subgraph[0].DrawStyle = DRAWSTYLE_TRIANGLE_UP; sc.Subgraph[0].PrimaryColor = RGB(0, 78, 155); // Green for original condition sc.Subgraph[0].LineWidth = 3; // Adjust as needed for visibility sc.Subgraph[1].Name = "Opposite Condition"; sc.Subgraph[1].DrawStyle = DRAWSTYLE_TRIANGLE_DOWN; sc.Subgraph[1].PrimaryColor = RGB(128, 0, 0); // Red for opposite condition sc.Subgraph[1].LineWidth = 3; // Adjust as needed for visibility // Add input settings for tick offsets sc.Input[0].Name = "Original Condition Tick Offset"; sc.Input[0].SetInt(10); // Default value sc.Input[0].SetIntLimits(1, 100); // You can adjust the limits as necessary sc.Input[1].Name = "Opposite Condition Tick Offset"; sc.Input[1].SetInt(10); // Default value sc.Input[1].SetIntLimits(1, 100); // You can adjust the limits as necessary sc.AutoLoop = 1; // Automatic looping through bars return; } |
To post a message in this thread, you need to log in with your Sierra Chart account: