SCDLLName
The macro that registers a study's display name and DLL identity inside Sierra Chart. The string passed to SCDLLName is what users see in Analysis → Studies → Add Custom Study.
What it is
SCDLLName is the macro every Sierra Chart custom study DLL must call exactly once to register the DLL's display name with the platform. It is the bridge between a compiled .dll file sitting in Sierra Chart's installation folder and the human-readable name that users see in the platform's study list.
The macro takes a single string argument — the name you want to expose. When Sierra Chart loads the DLL, it reads this name and uses it everywhere the DLL is referenced from the UI: in the Analysis → Studies → Add Custom Study picker, in error messages about study loading, in the diagnostic logs.
The SCDLLName value is independent of the actual .dll filename on disk. You can name your file tm_v3_final_FINAL.dll, declare SCDLLName("Trade Manager"), and users will see "Trade Manager" in the platform regardless of what the file is called. Conventionally the two are kept aligned for operational sanity.
Why it matters
The SCDLLName string is part of the DLL's public identity. Once shipped, changing it is a breaking change: chartbooks reference studies by DLL name plus scsf_ function name, and renaming either one orphans every chartbook that loads the study. For SCS, this means the SCDLLName chosen on day one of a study's life is essentially permanent — it gets etched into thousands of user chartbooks the moment the DLL is distributed.
The macro also implicitly drives DLL identity for the Sierra Chart auto-loader. If two DLLs in the installation folder declare the same SCDLLName, the loader picks one and ignores the other. This matters when shipping multi-version updates: the new DLL must use the same name so it can replace the old one, but its file name on disk should differ enough to make manual diagnosis possible.
How it's used in ACSIL code
In source, SCDLLName appears exactly once per DLL, typically near the top of the main .cpp file alongside the #include "sierrachart.h" line:
#include "sierrachart.h"
SCDLLName("Trade Manager")
A DLL can host multiple scsf_ functions — each becomes its own selectable study — but it can declare only one SCDLLName. All studies in the DLL share the same display banner in the picker and the same identity for licensing and loading purposes.
Common patterns / pitfalls
- Declare exactly once per DLL — multiple
SCDLLNameinvocations in the same DLL will cause a linker conflict or undefined behavior. - Never change after release — the
SCDLLNamevalue is referenced by every chartbook that loads the study. Renaming it abandons every existing user's setup. - Keep the name human-readable — the string is shown to users. Avoid version suffixes (
v2,final), build dates, or developer-internal codenames. - Distinct DLL filenames per release — if you ship a new build of the same study, name the file
TradeManager_2026_05.dllrather than overwriting; this lets users keep the old file as a backup until they've validated the new one. TheSCDLLNamevalue stays unchanged. - Folder placement — the DLL must live in Sierra Chart's installation folder (typically
C:\SierraChart\Data\or the configured custom-studies directory). The platform scans this folder at startup.
Related SCS studies
Every SCS DLL — Trade Manager, Alert Log Monitor, CVD Filled Area, Single Print and Gap, the client Custom Studies — declares a unique SCDLLName so the studies appear cleanly in the picker. The names are versioned only at file-name level, never in the SCDLLName string itself.
See also
About the acsil & development category
Sierra Chart's Advanced Custom Study Interface and Language — the C++ surface SCS studies are built on.
Browse the full glossary