These tips are a complement to the Publishing Scripts requirements of our House Rules. They provide answers to common questions authors have about script publishing.
Premium users selling access to invite-only scripts should also read our Vendor requirements.
Should I publish my scripts in the Public Library or privately?
It depends on your purpose:
- Publish publicly if you want to share your script with the at-large TradingView community. Your publication must then respect the rules.
- Publish privately if you only want to share your script with a few users. When you do, your publication is not subject to script moderation since it is considered private. Only users with whom you share the script's link will have access to it. You are not allowed to use that link in any public TradingView content. While a public script can never be deleted, you can delete your private script when it is no longer needed.
Whether you publish to the Public Library or privately, you have access to open-source or protected modes. Premium users can also publish private invite-only scripts.
The Pine User Manual explains how to use the different script publication modes.
Can I update an existing script and its description?
- You can update the script's code using the Update feature in the Publish Script window. You can also publish release notes with your update. They will appear under your description.
- You cannot edit the description originally published with a script.
- After you publish a script, it is not possible to convert its publication mode. You cannot make a public script private, nor change it from open-source to protected mode, for example.
- Note that when you make incremental improvements to a script, we expect you to use the update feature, rather than making a new publication for each version. If, for some reason, you need to fork your codebase into separate scripts, then the differences between both should be explained in your description.
What can I include in my script title?
- Your title should obviously describe your script first. You may also include your TradingView user name in the title.
- Stick to the 7-bit ASCII character set. No emojis and no special effects using characters are allowed.
- Never use all caps for any part of your title except abbreviations like BB, SR, etc.
- Use English only.
What sort of description is expected?
- Your description must allow traders to understand how it can be useful to them. Without a proper description, users have no way of understanding your script and will not use it.
- Most TradingView users do not understand Pine code, so even if you publish an open-source script, your description is the only way the majority of TV users will be able to understand your script.
- Protected mode scripts require better explanations than open-source scripts since users don't have access to the code.
- Descriptions may not contain contact information or links, in general. When the author is not a Premium account holder selling access to invite-only scripts, educational links are allowed in script descriptions if:
- They are relevant to the script.
- Nobody can benefit from the traffic generated to the linked site. This means links to YouTube, Medium or Twitter content will usually not be allowed.
- Do not make unrealistic claims. Do not attempt to confuse the community by inferring future performance from past results. If you are publishing a strategy, you should know enough about backtesting to understand that the results of a single test run shown with a published strategy do not constitute proof they will repeat in the future.
- If you are presenting a strategy, we expect a discussion of the inevitable compromises involved in designing any strategy, the conditions or markets it is optimized for and its limits.
- We expect you to document all the values used in the strategy's Properties dialog box to generate the results you show, including commission or slippage used.
- Strategies using non-standard chart types are not allowed.
- Keep things real.
- Don't solicit users in your description or comments. Users don't need to be reminded to like or follow your script, for example. Do not ask users to contact you privately.
What is an original script?
- As is mentioned in the House Rules, the Public Library already contains hundreds or thousands of common types of scripts. New publications of these types of scripts only provide value if they bring something new to the community. Examples of these types include:
- Support and resistance,
- MACD, CCI, WaveTrend, RSI, Stoch, etc.
- Adding an MA to RSI, or volume weighing it, or adding an MTF feature has already been done many times. If you choose to go that way, your script should bring novelty and your description should make that clear.
- An MA script using your own MA periods is not considered original, as users can configure their existing MA scripts using any lengths they want. If you trade a special combination of MA periods that you want to share, then publish an idea explaining it, as a script with different MA periods alone does not warrant a new script publication.
- An excellent way to ensure your script is original is to search the Public Library for similar ideas. You will often find scripts already doing what you are thinking of.
- Publishing your script should serve the community first—not the script author.
- You are welcome to use protected mode if you do not want to share your code, but if you do, we expect it's because you have something original going on in that script. This should be made clear in your description.
Why are charts evaluated?
- The chart you are publishing with your script should be easy to understand and your script's output should be readily identifiable. This is the reason why we ask you to publish your script with clean charts.
- Unless your script must be used with another one and your description makes that clear, do not include other scripts on the chart.
- You may use graphics or drawings on charts, but they should contribute to understanding what your script does or how to use it.
Can I reuse open-source?
Sure! One of the reasons we encourage open-source publications is so Pine programmers can share and learn from each other.
A concept fundamental to this approach is that if you reuse open-source, you should also publish your script in open-source mode. Open-source scripts are there to learn and build upon. Taking credit for the original work of another author does not reflect our community values, nor does systematically repurposing original open-source code with slight variations. Systematic poaching of the Library's open-source for one's benefit is not tolerated.
You may reuse open-source all you want for your own trading, but be sure you respect our rules if you choose to publish a script reusing open-source code:
- Remember that if you intend to reuse open-source code, you must obtain permission from the original author. Explicit permission must be granted to reuse open-source in closed source publications.
- Unless explicitly mentioned, permission for reuse is for one publication.
- If you reuse open-source code, basic civility dictates you credit the original author.
The more recent and original an open-source script is, the more critical it is to respect reuse rules. Reuse of open-source code that is more or less public domain or was ported from other platforms is often not moderated.
What happens to moderated scripts?
- Moderators hide moderated scripts.
- When scripts are hidden, they appear with a red background.
- Once hidden, scripts cannot be unhidden.
- You cannot modify hidden scripts.
- Nobody can see hidden scripts besides moderators and their author.
- Moderators cannot hide scripts on request. Only scripts violating House Rules can be hidden.
What else do I need to know?
- Public test scripts are not allowed. Publish tests privately.
- Scripts requiring passwords to activate them aren't allowed.
- Only Premium users may include payment information in their Signature field to be used with their invite-only scripts. Other accounts may not include any type of payment/donation information in their publications or comments. Their user profile fields may include such information, though it will not appear with script publications.