What Can You Build?
kScript gives you access to powerful data sources that most platforms don't offer.
Example Indicators
A complete indicator in just 5 lines:
//@version=2
define(title="My First Indicator", position="onchart", axis=true);
timeseries prices = ohlcv(symbol=currentSymbol, exchange=currentExchange);
timeseries average = sma(source=prices.close, period=20);
plotLine(value=average, colors=["blue"], width=2, label=["20 SMA"], desc=["20-period Simple Moving Average"]);| Line | What it does |
|---|---|
| Line 1 | Tell kScript this is version 2 |
| Line 3 | Set up your indicator's name |
| Line 5 | Get price data from current chart |
| Line 6 | Calculate 20-period average |
| Line 8 | Draw a blue line on chart |
Advanced Example: RSI Indicator
Full-featured RSI with customizable inputs, smooth rendering, and proper styling:
//@version=2
// Indicator definition
define(title="RSI", position="offchart", axis=true);
// Customizable user inputs
var splineColors = input(name="myColor", type="color", defaultValue="orange");
var width = input(name="width", type="number", defaultValue=2);
var period = input(name="period", type="number", defaultValue=26);
var smooth = input(name="smooth", type="boolean", defaultValue=true);
// Data subscription - load OHLCV data from the current chart
timeseries trade = ohlcv(symbol=currentSymbol, exchange=currentExchange);
// Local variable
var fill = true;
// Create RSI time series using the built-in technical indicator function "rsi()"
// The close price is accessed through trade.close property
var transformedData = rsi(source=trade.close, period=period);
// Prepare final plot data
var baseLine = 0;
var combinedData = [transformedData, baseLine];
// Actually plot the data
// Plot an area spline with baseline and RSI values
// Use "transparent" as the second line's color so it's hidden
plotLine(value=combinedData, colors=[splineColors, "transparent"], width=width, fill=fill, smooth=smooth, label=["RSI"], desc=["Relative Strength Index"]);
<figure class="docs-output">
<figcaption class="docs-output-caption">
<span class="docs-output-dot"></span>
<span class="docs-output-label">Rendered output</span>
</figcaption>
<img src="/k-script/rsi-example.svg" alt="Rendered RSI indicator output">
</figure>
{% endtab %}
{% endtabs %}
Why kScript?
AI-Powered Development
Transform your AI assistant into a kScript expert. Our reference document teaches ChatGPT, Claude, and other LLMs the exact kScript syntax — no more debugging broken AI-generated code.
Join the Beta Community
Your feedback is heard and implemented quickly — we've shipped 40+ community-requested features in the past month alone. Report a bug in the morning, see it fixed by afternoon. Suggest a function today, use it next week. This rapid iteration cycle means kScript evolves exactly how you need it to.
Join our Discord to:
- Get early access to new features and documentation
- Submit feedback that gets responded to within hours, not weeks
- Collaborate on code with other developers building advanced indicators
- Share and debug scripts together in real-time
- Help prioritize the development roadmap
- Request custom data sources and new functions
Ready to start building?
Join thousands of traders using kScript to power their trading strategies with unprecedented market data access.