# Kiyotaka kScript > kScript is Kiyotaka's scripting language for building technical indicators, trade-flow analytics, and order-book visualizations. These docs cover the language reference: core concepts, variables, type system, function library, and the v2 changelog. ## Getting Started - **Intro —** [Introducing kScript v2](https://kiyotaka.ai/kscript/getting-started/introduction.md): kScript is designed to be intuitive whether you're coming from PineScript or learning to code for the first time. Create technical indicators, analyze market trends, and study order flow with powerful yet accessible tools. The syntax is straightforward and easy to learn — you'll be building working indicators in minutes. - **Intro —** [kScript v2 Overview](https://kiyotaka.ai/kscript/getting-started/overview.md): A complete guide to understanding how kScript works. Covers core concepts, rules, and patterns for building indicators. - **Intro —** [Quick Start Guide](https://kiyotaka.ai/kscript/getting-started/quick-start.md): Get started with kScript in 5 minutes. Build your first EMA Difference indicator step by step. ## Core Concepts - **Reference —** [Data Types](https://kiyotaka.ai/kscript/core-concepts/data-types.md): Understanding kScript's type system and the fundamental data types available for building trading algorithms. - **Reference —** [Core Variables](https://kiyotaka.ai/kscript/core-concepts/core-variables.md): Essential variables available globally in kScript for accessing current market context, symbols, and exchanges. - **Reference —** [Type System](https://kiyotaka.ai/kscript/core-concepts/type-system.md): A comprehensive guide to kScript's hybrid type system, covering type inference, variable declarations, and data types. - **Reference —** [Data Sources](https://kiyotaka.ai/kscript/core-concepts/data-sources.md): All available market data feeds — OHLCV, funding, liquidations, options, ETF flows, and more. - **Reference —** [Execution Model](https://kiyotaka.ai/kscript/core-concepts/execution-model.md): Understanding how kScript v2 processes your code through its three-phase lifecycle for optimal performance and predictable behavior. - **Reference —** [Keyword Arguments](https://kiyotaka.ai/kscript/core-concepts/keyword-arguments.md): Learn how to use keyword arguments (kwargs) in kScript v2 for clear, readable, and maintainable function calls with named parameters. - **Reference —** [Color Constants](https://kiyotaka.ai/kscript/core-concepts/color-constants.md): Predefined color constants available in kScript for chart visualization and plotting. - **Reference —** [User-Defined Functions](https://kiyotaka.ai/kscript/core-concepts/user-functions.md): Learn how to create custom, reusable functions in kScript v2 using the func keyword for modular and maintainable code. ## Functions - **Reference —** [Script Definition](https://kiyotaka.ai/kscript/functions/script-definition.md): Define an indicator's metadata and surface user-configurable inputs. Plus debugging and data-source helpers. - **Reference —** [Moving Averages](https://kiyotaka.ai/kscript/functions/moving-averages.md): Trend-following indicators that smooth price data — SMA, EMA, and RMA help identify direction, support/resistance, and crossover signals. - **Reference —** [Oscillators](https://kiyotaka.ai/kscript/functions/oscillators.md): RSI, CCI, and Stochastic — momentum oscillators that flag overbought and oversold conditions. - **Reference —** [Trend Indicators](https://kiyotaka.ai/kscript/functions/trend-indicators.md): ADX, Ichimoku Cloud, MACD, and Parabolic SAR — trend strength, momentum, and reversal indicators. - **Reference —** [Volume Indicators](https://kiyotaka.ai/kscript/functions/volume-indicators.md): Money Flow Index and On-Balance Volume — volume-weighted indicators that confirm price moves and flag divergences. - **Reference —** [Orderbook Functions](https://kiyotaka.ai/kscript/functions/orderbook-functions.md): Order-flow analytics functions for measuring bid and ask depth at configurable depth percentages. - **Reference —** [Plotting & Visualization](https://kiyotaka.ai/kscript/functions/plotting.md): Render lines, bars, candles, shapes, text, labels, tables, and rectangles on the chart. - **Reference —** [Math Functions](https://kiyotaka.ai/kscript/functions/math-functions.md): Mathematical functions and constants accessed through the math namespace. - **Reference —** [Color Functions](https://kiyotaka.ai/kscript/functions/color-functions.md): Brightness, darken, lighten, transparency, opacity, blend, and gradient mapping for dynamic chart styling. - **Reference —** [String Functions](https://kiyotaka.ai/kscript/functions/string-functions.md): String manipulation and transformation methods available in kScript v2.0 for text processing. - **Reference —** [Utility Functions](https://kiyotaka.ai/kscript/functions/utility-functions.md): Series statistics, crossover detection, and value validation helpers used across indicators and signals. - **Reference —** [Conditionals & Loops](https://kiyotaka.ai/kscript/functions/loops.md): Learn how to use for loops, while loops, and conditional statements in kScript v2 for iterative calculations and control flow logic within the per-bar execution model. ## FAQ - **Topics —** [General FAQ](https://kiyotaka.ai/kscript/faq/general.md): Frequently asked questions about kScript, covering everything from basic syntax to advanced topics. - **Topics —** [Best Practices](https://kiyotaka.ai/kscript/faq/best-practices.md): Guidelines and recommendations for writing efficient, maintainable, and error-free kScript code. - **Topics —** [Limitations](https://kiyotaka.ai/kscript/faq/limitations.md): Current constraints and known limitations in kScript. Many of these will be addressed in future updates. - **Topics —** [Exchange & Symbol Format](https://kiyotaka.ai/kscript/faq/symbol-format.md): Complete list of supported exchanges and their symbol format syntax for use in kScript. ## Reference - **Lookup —** [Reference](https://kiyotaka.ai/kscript/reference/quick-reference.md): Comprehensive reference for all kScript functions, variables, and data types. Build powerful trading algorithms with our extensive library of technical indicators and utilities. ## Updates - **Changelog —** [kScript v1 vs v2 — Key Differences](https://kiyotaka.ai/kscript/updates/changelog.md): Major improvements and design changes between kScript v1 and v2. Learn what's new in the latest version.