Agent skill

Strategy Export to Pine Script and More

by HKUDS in HKUDS/Vibe-Trading

Translates a Python backtest strategy or a plain description into Pine Script v6, TDX formulas and MQL5 code for TradingView, Chinese broker terminals and MetaTrader 5.

MITAuto-check passedBusiness, Finance & HR

Install Strategy Export to Pine Script and More

skills CLI
$ npx skills add HKUDS/Vibe-Trading --skill pine-script -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install HKUDS/Vibe-Trading pine-script --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/HKUDS/Vibe-Trading.git skills-src && mkdir -p .claude/skills && cp -r skills-src/agent/src/skills/pine-script .claude/skills/pine-script && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
pine-script
GitHub stars
35k
Token cost
~3.8k tokens
SKILL.md length
987 words
Files
1
Skills in repo
89
Repo updated
First seen
Licence
MIT

At a glance

Translates a Python backtest strategy or a plain description into Pine Script v6, TDX formulas and MQL5 code for TradingView, Chinese broker terminals and MetaTrader 5.

  • Works in 3 steps: TradingView — Pine Script v6 → 通达信 / 同花顺 / 东方财富 — TDX Formula → MetaTrader 5 — MQL5
  • Moving a backtested Python strategy onto TradingView
  • SKILL.md covers Overview, Workflow: Export from Backtest, Workflow: Generate from… and Output Format, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

The skill always produces code for every supported platform in one file, artifacts/strategy.pine: Pine Script v6 for TradingView, TDX formula code for 通达信, 同花顺 and 东方财富, and MQL5 for MetaTrader 5. When exporting from a backtest, the agent reads config.json for instruments, dates and parameters and code/signal_engine.py for the strategy logic, translates the logic for each platform and saves the combined output.

A second workflow writes indicator or strategy code directly from your description. The output file lays the platforms out in sections with paste-in instructions for each, and the agent returns the code with usage notes per platform. A mapping table converts pandas and numpy idioms, such as rolling means, EMA, RSI, MACD, rolling standard deviation and highs and lows, into their Pine Script v6 equivalents.

When your agent uses it

  • Moving a backtested Python strategy onto TradingView
  • Getting TDX formula code for 通达信 or 同花顺 from a strategy
  • Producing an MQL5 version of a strategy for MetaTrader 5
  • Writing a Pine Script indicator from a plain description

Example prompts

  • “Export my backtest strategy to Pine Script, TDX formula and MQL5.”
  • “Write a TradingView indicator that plots an EMA crossover from this description.”
  • “Translate the rolling mean and RSI in my signal_engine.py into Pine Script v6.”
  • “How do I paste the generated code into the Pine Editor?”

Requirements

  • A backtest run directory with config.json and code/signal_engine.py when exporting

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. TradingView — Pine Script v6
  2. 通达信 / 同花顺 / 东方财富 — TDX Formula
  3. MetaTrader 5 — MQL5

What it can do on your machine

Read from SKILL.md and the folder at commit 7f6908b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are pinescript and mql5).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Strategy Export to Pine Script and More loads about 3.8k tokens when it runs. Until then it costs about 32 tokens; SKILL.md has 987 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~32
When it runs · the whole SKILL.md, loaded when a task matches
~3.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from HKUDS/Vibe-Trading at commit 7f6908b, republished under its MIT licence (© HKUDS). 987 words, ~3,750 tokens.

Download SKILL.mdSave it as .claude/skills/pine-script/SKILL.md (or your agent's skills folder).
name
pine-script
description
Export backtest strategies to indicator/strategy code for major trading platforms — TradingView, 通达信, 同花顺, 东方财富, MT5.
category
tool

Overview

This skill exports a Vibe-Trading strategy to all major trading platforms in one go. Output file: artifacts/strategy.pine (inside the run directory).

Supported platforms (always generate ALL):

GroupPlatformsLanguage
International ChartsTradingViewPine Script v6
China Equities通达信 / 同花顺 / 东方财富TDX Formula
Forex / CFDMetaTrader 5MQL5

Workflow: Export from Backtest

  1. load_skill("pine-script") — read this guide
  2. read_file("config.json") — understand instruments, dates, parameters
  3. read_file("code/signal_engine.py") — understand the Python strategy logic
  4. Translate the strategy to ALL platforms using the references below
  5. write_file("artifacts/strategy.pine") — save the combined output
  6. Return the code in a code block with usage instructions per platform

Workflow: Generate from Description

  1. load_skill("pine-script") — read this guide
  2. Write indicator/strategy code for ALL platforms based on the user's description
  3. write_file("artifacts/strategy.pine") — save the combined output
  4. Return the code with usage instructions

Output Format

The output file uses this structure (all platforms in one file):

================================================================================
  TRADINGVIEW — Pine Script v6
  Paste into: Pine Editor → New blank indicator → Add to Chart
================================================================================

[Pine Script code here]

================================================================================
  通达信 / 同花顺 / 东方财富 (TDX Formula)
  Paste into: 功能 → 公式管理器 → 新建指标公式
================================================================================

[TDX formula code here]

================================================================================
  MT5 — MQL5
  Save as: .mq5 file → MetaEditor → Compile → Navigator → Attach to Chart
================================================================================

[MQL5 code here]

Platform Reference

1. TradingView — Pine Script v6

Template
pinescript
// This strategy was generated by Vibe-Trading
// Paste into TradingView Pine Editor → Add to Chart
//@version=6
strategy("Strategy Name", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, initial_capital=1000000)

// ============================================================================
// INPUTS
// ============================================================================
// [Group inputs logically with input.int(), input.float(), input.string()]

// ============================================================================
// CALCULATIONS
// ============================================================================
// [Core indicator calculations]

// ============================================================================
// CONDITIONS
// ============================================================================
longCondition = false
shortCondition = false
exitLongCondition = false
exitShortCondition = false

// ============================================================================
// STRATEGY EXECUTION
// ============================================================================
if longCondition
    strategy.entry("Long", strategy.long)
if shortCondition
    strategy.entry("Short", strategy.short)
if exitLongCondition
    strategy.close("Long")
if exitShortCondition
    strategy.close("Short")

// ============================================================================
// PLOTS
// ============================================================================
// [Visual overlays: moving averages, bands, signals]

// ============================================================================
// ALERTS
// ============================================================================
alertcondition(longCondition, title="Long Signal", message="Long entry signal triggered")
alertcondition(shortCondition, title="Short Signal", message="Short entry signal triggered")
Python → Pine Script Mapping
Python (pandas/numpy)Pine Script v6
df['close'].rolling(n).mean()ta.sma(close, n)
df['close'].ewm(span=n).mean()ta.ema(close, n)
ta.RSI(df['close'], n) or manual RSIta.rsi(close, n)
ta.MACD(df['close'])[macdLine, signalLine, hist] = ta.macd(close, 12, 26, 9)
df['close'].rolling(n).std()ta.stdev(close, n)
df['high'].rolling(n).max()ta.highest(high, n)
df['low'].rolling(n).min()ta.lowest(low, n)
df['close'].pct_change(fill_method=None)(close - close[1]) / close[1]
df['volume'].rolling(n).mean()ta.sma(volume, n)
df['close'] > df['close'].shift(1)close > close[1]
Bollinger Bands[mid, upper, lower] = ta.bb(close, length, mult)
ATRta.atr(length)
ADXta.adx(high, low, close, length)
Stochasticta.stoch(close, high, low, length, smoothK, smoothD)
CCIta.cci(close, length)
Williams %Rta.wpr(length)
MFIta.mfi(close, length)
OBVta.obv
VWAPta.vwap
Data References
PythonPine Script v6
df['open']open
df['high']high
df['low']low
df['close']close
df['volume']volume
df.index (datetime)time
df['close'].shift(n)close[n]
Signal Logic
Python PatternPine Script v6
(fast > slow) & (fast.shift(1) <= slow.shift(1))ta.crossover(fast, slow)
(fast < slow) & (fast.shift(1) >= slow.shift(1))ta.crossunder(fast, slow)
signal.where(condition, 0)condition ? value : 0
np.where(cond, val_true, val_false)cond ? val_true : val_false
signal.clip(-1, 1)math.max(-1, math.min(1, signal))
signal.fillna(0)nz(signal, 0)
pd.isna(value)na(value)
Position Sizing
Python PatternPine Script v6
Equal weight 1/Nstrategy.percent_of_equity with default_qty_value = 100/N
Full position on signal=1.0default_qty_type=strategy.percent_of_equity, default_qty_value=100
Half position on signal=0.5Use strategy.entry(..., qty=strategy.equity * 0.5 / close)
Stop-lossstrategy.exit("Exit", stop=entryPrice * (1 - stopPct))
Take-profitstrategy.exit("Exit", limit=entryPrice * (1 + tpPct))
Syntax Rules (Critical)
  1. Version declaration must be first line: //@version=6
  2. Ternary operators MUST stay on one line: text = condition ? "a" : "b"
  3. Line continuation: continuation lines must be indented MORE than the starting line
  4. No plot() in local scope (if/for/function) — use plot(condition ? value : na)
  5. var: persistent state across bars; regular assignment recalculates each bar
  6. Avoid repainting: use barstate.isconfirmed, lookahead=barmerge.lookahead_off
  7. Limits: max 500 bars lookback, 500 plot calls, 64 entry/exit per bar, 40 request.security()

2. 通达信 / 同花顺 / 东方财富 — TDX Formula

These platforms share 95%+ identical formula syntax. Write ONE version that works on all three.

Template
{Vibe-Trading 策略导出}
{策略名称: XXX}

{——————— 参数 ———————}
N:=14;
M:=6;

{——————— 指标计算 ———————}
RSI_VAL:=RSI(CLOSE,N);
MA_FAST:=MA(CLOSE,5);
MA_SLOW:=MA(CLOSE,20);

{——————— 买卖信号 ———————}
BUY:CROSS(MA_FAST,MA_SLOW) AND RSI_VAL<40,COLORRED;
SELL:CROSS(MA_SLOW,MA_FAST) AND RSI_VAL>60,COLORGREEN;

DRAWTEXT(BUY,LOW,'B'),COLORYELLOW;
DRAWTEXT(SELL,HIGH,'S'),COLORWHITE;
Python → TDX Mapping
PythonTDX Formula
df['close'].rolling(n).mean()MA(CLOSE,N)
df['close'].ewm(span=n).mean()EMA(CLOSE,N)
RSIRSI(CLOSE,N) (returns 0-100)
MACDMACD.DIF, MACD.DEA, MACD.MACD or manual: DIF:=EMA(CLOSE,12)-EMA(CLOSE,26); DEA:=EMA(DIF,9); MACD:=(DIF-DEA)*2;
Bollinger BandsBOLL(N,M) → BOLL.UPPER, BOLL.MID, BOLL.LOWER or manual
ATRATR:=MA(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),N);
df['close'].shift(n)REF(CLOSE,N)
df['high'].rolling(n).max()HHV(HIGH,N)
df['low'].rolling(n).min()LLV(LOW,N)
crossover(fast, slow)CROSS(FAST,SLOW)
crossunder(fast, slow)CROSS(SLOW,FAST)
df['volume']VOL
abs(x)ABS(X)
max(a,b)MAX(A,B)
min(a,b)MIN(A,B)
conditionalIF(COND,A,B)
df['close'].pct_change(fill_method=None)(CLOSE-REF(CLOSE,1))/REF(CLOSE,1)
count true in N barsCOUNT(COND,N)
sum over N barsSUM(X,N)
std over N barsSTD(CLOSE,N)
slope / linear regressionSLOPE(CLOSE,N)
Syntax Rules
  1. Assignment: := for intermediate variables, : for output (plotted) lines
  2. Comments: {comment} — curly braces, NOT //
  3. No semicolons optional: each statement ends with ;
  4. Colors: COLORRED, COLORGREEN, COLORYELLOW, COLORWHITE, COLORBLUE, COLORCYAN, COLORMAGENTA
  5. Line styles: LINETHICK2, POINTDOT, STICK, VOLSTICK
  6. Draw text: DRAWTEXT(COND, PRICE, 'TEXT'), COLOR;
  7. Draw icon: DRAWICON(COND, PRICE, ICON_ID);
  8. All function/variable names UPPERCASE
  9. No loops / no arrays — everything is vectorized bar-by-bar
  10. Max formula length: ~10,000 characters per formula
Show full SKILL.md (393 more words)Show less
Platform Differences
Feature通达信同花顺东方财富
MACD built-inMACD(12,26,9)MACD(12,26,9)same
StochasticKDJ(N,M1,M2)samesame
Custom colorCOLOR+RRGGBBCOLOR+RRGGBBlimited
Strategy backtest条件选股 only条件选股 only条件选股 only

For maximum compatibility, avoid platform-specific extensions. Stick to core functions.


3. MetaTrader 5 — MQL5

Template (Custom Indicator)
mql5
//+------------------------------------------------------------------+
//| Generated by Vibe-Trading                                         |
//+------------------------------------------------------------------+
#property copyright "Vibe-Trading"
#property indicator_chart_window       // or indicator_separate_window
#property indicator_buffers 2
#property indicator_plots   2
#property indicator_color1  clrDodgerBlue
#property indicator_color2  clrRed

input int InpPeriod = 14;  // Period

double BuyBuffer[];
double SellBuffer[];

int OnInit()
{
   SetIndexBuffer(0, BuyBuffer, INDICATOR_DATA);
   SetIndexBuffer(1, SellBuffer, INDICATOR_DATA);
   PlotIndexSetInteger(0, PLOT_ARROW, 233);  // up arrow
   PlotIndexSetInteger(1, PLOT_ARROW, 234);  // down arrow
   PlotIndexSetInteger(0, PLOT_DRAW_TYPE, DRAW_ARROW);
   PlotIndexSetInteger(1, PLOT_DRAW_TYPE, DRAW_ARROW);
   return(INIT_SUCCEEDED);
}

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{
   int start = MathMax(prev_calculated - 1, InpPeriod);
   for(int i = start; i < rates_total; i++)
   {
      BuyBuffer[i]  = EMPTY_VALUE;
      SellBuffer[i] = EMPTY_VALUE;

      // === YOUR LOGIC HERE ===
      // Example: if(buyCondition) BuyBuffer[i] = low[i];
      //          if(sellCondition) SellBuffer[i] = high[i];
   }
   return(rates_total);
}
Python → MQL5 Mapping
PythonMQL5
df['close'].rolling(n).mean()iMA(_Symbol, PERIOD_CURRENT, n, 0, MODE_SMA, PRICE_CLOSE) or manual loop
EMAiMA(..., MODE_EMA, ...)
RSIiRSI(_Symbol, PERIOD_CURRENT, n, PRICE_CLOSE)
MACDiMACD(_Symbol, PERIOD_CURRENT, 12, 26, 9, PRICE_CLOSE)
BollingeriBands(_Symbol, PERIOD_CURRENT, n, 0, mult, PRICE_CLOSE)
ATRiATR(_Symbol, PERIOD_CURRENT, n)
StochasticiStochastic(_Symbol, PERIOD_CURRENT, K, D, slowing, MODE_SMA, STO_LOWHIGH)
df['close'].shift(n)close[i-n] (in OnCalculate loop)
crossoverbuf[i] > ref[i] && buf[i-1] <= ref[i-1]
Syntax Rules
  1. Indicator handles: call iMA() etc. in OnInit(), use CopyBuffer() to get values
  2. Buffer direction: MQL5 buffers are indexed 0=oldest by default; use ArraySetAsSeries() to reverse
  3. EMPTY_VALUE: use for "no signal" on arrow plots
  4. Indicator vs EA: generate indicator (.mq5), not Expert Advisor, to match "indicator export" purpose
  5. Handle-based API: MQL5 uses handles — create in OnInit, read in OnCalculate

Symbol Format Mapping

When generating code, map Vibe-Trading instrument codes appropriately:

Vibe-TradingTradingView通达信/同花顺MT5
000001.SZSZSE:000001000001N/A
600519.SHSSE:600519600519N/A
AAPL.USNASDAQ:AAPLN/AAAPL
BTC-USDTBINANCE:BTCUSDTN/ABTCUSD

Note: Most indicator code is instrument-agnostic — the user applies it to whatever chart they're viewing. Include a comment noting the original instrument for reference only.

Limitations & Transparency

When a Python strategy uses features that can't be directly translated, clearly note it:

Python FeaturePlatform Limitation
ML models (sklearn, etc.)None — flag as "manual implementation required"
Custom pandas operationsTDX — limited to built-in functions
Multi-timeframe logicTDX — no native MTF; Pine/MQL5 — supported
Dynamic position sizingTDX — indicator only, no position control
External data (API calls)All — indicators run offline on chart data only

Always add a comment block at the top listing any features that could not be translated.

Quality Checklist

Before outputting:

  • ALL 3 platform sections are included (Pine Script, TDX, MQL5)
  • Each platform section has proper header with usage instructions
  • Pine Script: //@version=6 is first line, no plot() in local scope, ternary on single lines
  • TDX: all uppercase functions, := for intermediate, : for output, {comments}
  • MQL5: proper handle-based API, EMPTY_VALUE for no-signal
  • Entry/exit conditions match the Python signal logic semantically across ALL platforms
  • Untranslatable features are clearly documented at the top of each section
  • Comment header notes the original Vibe-Trading run_id and instrument

© HKUDS, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in agent/src/skills/pine-script of HKUDS/Vibe-Trading.

Open the folder on GitHubat commit 7f6908b

Compare with similar skills

Strategy Export to Pine Script and More next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Strategy Export to Pine Script and More compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Strategy Export to Pine Script and More this skillHKUDS/Vibe-Trading35k—~3.8kAutomated safety check: PassMIT
TqSdk Trading and Datashinnytech/tqsdk-python5.1k—~2kAutomated safety check: PassApache-2.0
CCXT Crypto Exchange Library2025Emma/vibe-coding-cn23k2 repos~4.4kAutomated safety check: PassMIT
Tushare Datazillionare/zillionare3182 repos~2.3kAutomated safety check: PassNone
WorldQuant BRAIN Alpha ResearchQuantML-Research/wq-alpha-research405—~4.9kAutomated safety check: PassNone
Kalshi Traderyanfrigo/kalshi-ai-trading-bot612—~3.4kAutomated safety check: PassMIT

Similar skills

  • TqSdk Trading and Data

    shinnytech/tqsdk-python

    Answers TqSdk Python questions on market data, accounts, orders, margin trials, simulation and backtesting, using the library's own docs and examples.

    5.1k GitHub stars~2k tokensUpdated 1 mo ago
    Business, Finance & HRAuto-check passed
  • CCXT Crypto Exchange Library

    2025Emma/vibe-coding-cn

    Reference help for the CCXT library covering crypto exchange APIs, market data, trading and order management across 150+ exchanges in JavaScript, Python and PHP.

    23k GitHub starsUsed in 2 repos~4.4k tokens
    Business, Finance & HRAuto-check passed
  • Tushare Data

    zillionare/zillionare

    面向中文自然语言的 Tushare 数据研究技能。用于把“看看这只股票最近怎么样”“帮我查财报趋势”“最近哪个板块最强”“北向资金在买什么”“给我导出一份行情数据”这类请求,转成可执行的数据获取、清洗、对比、筛选、导出与简要分析流程。适用于 A 股、指数、ETF/基金、财务、估值、资金流、公告新闻、板块概念与宏观数据等研究场景。

    318 GitHub starsUsed in 2 repos~2.3k tokens
    Business, Finance & HRAuto-check passed
  • WorldQuant BRAIN Alpha Research

    QuantML-Research/wq-alpha-research

    Chinese-language playbook for WorldQuant BRAIN alphas: choose fields, write expressions, backtest, diagnose check failures, tune turnover, submit and build portfolios.

    405 GitHub stars~4.9k tokensUpdated 3 mo ago
    Business, Finance & HRAuto-check passed
  • Kalshi Trade

    ryanfrigo/kalshi-ai-trading-bot

    The disciplined process for autonomously and profitably trading the live Kalshi account on each /loop tick, with Claude as the decision-maker.

    612 GitHub stars~3.4k tokensUpdated today
    Business, Finance & HRAuto-check passed
  • Polymarket Tennis

    livetennisapi/livetennisapi-mcp

    Build observe-only Polymarket and Kalshi tennis market tooling on the polymarket-tennis Python package (MIT) plus the Live Tennis API free tier.

    152 GitHub stars~3k tokensUpdated today
    Business, Finance & HRAuto-check passed

More from HKUDS/Vibe-Trading

All 89 skills in this repo
  • Eastmoney Market Data

    HKUDS/Vibe-Trading

    Index of Eastmoney's free, no-token market data interfaces for China A-shares and Hong Kong stocks: fund flows, dragon-tiger lists, margin trading, reports and news.

    35k GitHub stars~1k tokensUpdated yesterday
    Auto-check passed
  • OKX Market Data

    HKUDS/Vibe-Trading

    Retrieves public OKX cryptocurrency market data such as spot prices, candlesticks, funding rates and open interest through the OKX V5 REST API, with no authentication.

    35k GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed
  • SEC EDGAR Filings Fetcher

    HKUDS/Vibe-Trading

    Fetches U.S. SEC EDGAR data: resolves tickers to CIK numbers, lists recent 10-K, 10-Q and 8-K filings with document URLs, and pulls XBRL financial series.

    35k GitHub stars~1.4k tokensUpdated yesterday
    Auto-check passed
  • A-Share ST Risk Screener

    HKUDS/Vibe-Trading

    Predicts whether a mainland China A-share company risks an ST or *ST warning after its next annual report, using financial thresholds and Sina penalty records.

    35k GitHub stars~4.9k tokensUpdated yesterday
    Auto-check passed
  • Breaks a structural trend such as AI infrastructure into its physical supply chain and ranks lesser-known listed companies sitting on each bottleneck.

    35k GitHub stars~2.7k tokensUpdated yesterday
    Auto-check passed
  • Plans and drafts an eight-part, roughly 120k-word investigative series on one company, built around a strict fact-check pass rather than fast drafting.

    35k GitHub stars~2.4k tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Strategy Export to Pine Script and More

What does Strategy Export to Pine Script and More do?

Translates a Python backtest strategy or a plain description into Pine Script v6, TDX formulas and MQL5 code for TradingView, Chinese broker terminals and MetaTrader 5. pine: Pine Script v6 for TradingView, TDX formula code for 通达信, 同花顺 and 东方财富, and MQL5 for MetaTrader 5.py for the strategy logic, translates the logic for each platform and saves the combined output.

When should I use Strategy Export to Pine Script and More?

Strategy Export to Pine Script and More fits situations like: moving a backtested Python strategy onto TradingView; getting TDX formula code for 通达信 or 同花顺 from a strategy; producing an MQL5 version of a strategy for MetaTrader 5; writing a Pine Script indicator from a plain description.

How do I install Strategy Export to Pine Script and More in Claude Code?

Run `npx skills add HKUDS/Vibe-Trading --skill pine-script -a claude-code`. Or copy the skill folder (agent/src/skills/pine-script in HKUDS/Vibe-Trading) into .claude/skills/pine-script in your project. Claude Code loads it when a task matches its description.

How do I install Strategy Export to Pine Script and More in Codex?

Run `npx skills add HKUDS/Vibe-Trading --skill pine-script -a codex`. Or copy the skill folder (agent/src/skills/pine-script in HKUDS/Vibe-Trading) into .agents/skills/pine-script in your project. Codex loads it when a task matches its description.

Can I use Strategy Export to Pine Script and More in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add HKUDS/Vibe-Trading --skill pine-script -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pine-script, .gemini/skills/pine-script, .github/skills/pine-script and .opencode/skills/pine-script in your project.

What does Strategy Export to Pine Script and More need to run?

SKILL.md names no scripts, command-line tools or credentials: Strategy Export to Pine Script and More is instructions for the agent only. Our summary lists: A backtest run directory with config.json and code/signal_engine.py when exporting.

Does Strategy Export to Pine Script and More access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Strategy Export to Pine Script and More safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Strategy Export to Pine Script and More use?

Strategy Export to Pine Script and More is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Strategy Export to Pine Script and More use?

About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Strategy Export to Pine Script and More?

Skills that share tags, products or a category with Strategy Export to Pine Script and More: TqSdk Trading and Data (shinnytech/tqsdk-python, 5.1k stars), CCXT Crypto Exchange Library (2025Emma/vibe-coding-cn, 23k stars), Tushare Data (zillionare/zillionare, 318 stars) and WorldQuant BRAIN Alpha Research (QuantML-Research/wq-alpha-research, 405 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Strategy Export to Pine Script and More?

HKUDS (a GitHub organization) maintains it in HKUDS/Vibe-Trading, which has 34,884 GitHub stars. The repository holds 89 skills in this directory. The repository was last updated on October 6, 2026.

Source: HKUDS/Vibe-Trading on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.