当用户需要操作同花顺(THS)进行个人炒股时,优先使用 exec 工具自动化完成“开盘准备 -> 盯盘 -> 选股 -> 自选管理 -> 交易执行 -> 收盘复盘”的完整流程。
本 Skill 目标是覆盖绝大多数个人交易者常见操作,但资金安全相关动作(最终买入/卖出确认)必须由用户手工确认。
同花顺 或 同花顺炒股同花顺快捷键功能F3上证大盘F4深证大盘F5分时 / K 线切换F6自选股F10个股资讯(基本面/公告等)F12委托下单F1成交明细F2价量分布F7个股全景Insert加入自选股Delete删除自选股Esc返回上一画面Ctrl+Z涨停板排行(常用)60 + Enter涨幅榜(快速看强势股)80 + Enter综合排行
activate 同花顺并 delay 0.2-0.5sEsc 回到上一级,再重试当用户发起交易动作时,先做以下检查并提醒:
用户意图推荐动作打开同花顺启动 + 激活窗口看大盘强弱F3/F4 + 60 + 80看今天涨停Ctrl+Z(涨停板)看我自选F6看某只股票基本面搜索代码 + F10看分时和成交F5 + F1准备下单F12 + 风控确认流程收盘复盘汇总涨停/板块/交易记录
启动应用:
bash
open -a "同花顺"
激活应用:
bash
osascript -e 'tell application "同花顺" to activate'
发送 F5(刷新):
bash
osascript -e 'tell application "同花顺" to activate' -e 'delay 0.3' -e 'tell application "System Events" to key code 96'
发送 F6(自选):
bash
osascript -e 'tell application "同花顺" to activate' -e 'delay 0.3' -e 'tell application "System Events" to key code 97'
发送 Ctrl+Z(涨停板):
bash
osascript -e 'tell application "同花顺" to activate' -e 'delay 0.3' -e 'tell application "System Events" to keystroke "z" using control down'
输入 60 回车(涨幅榜):
bash
osascript -e 'tell application "同花顺" to activate' -e 'delay 0.3' -e 'tell application "System Events" to keystroke "60"' -e 'tell application "System Events" to key code 36'
启动应用(按实际路径调整):
powershell
Start-Process "同花顺"
或:
powershell
Start-Process "C:\Program Files\同花顺\同花顺.exe"
Windows 下按键自动化通过
ths-hotkeys.mjs(Node 调用系统 COM SendKeys)实现;若 COM 被禁用,可退化为手工快捷键。
功能键key codeF1122F2120F399F4118F596F697F798F10109F12111Delete51Return36
exec 执行最小动作统一使用 exec,参数为 command。
xml
<tool_call id="ths_001" name="exec">{"command":"open -a \"同花顺\""}</tool_call>
xml
<tool_call id="ths_002" name="exec">{"command":"osascript -e 'tell application \"同花顺\" to activate' -e 'delay 0.3' -e 'tell application \"System Events\" to key code 97'"}</tool_call>
当用户使用以下“模板口令”时,按预定义流程执行。若用户未明确风格,默认执行“短线日内模板”。
触发词示例:
执行短线开盘检查开始短线盯盘做一轮短线复盘流程:
触发词示例:
执行波段检查做波段候选筛选流程:
触发词示例:
只做收盘复盘生成明日计划流程:
调用 {baseDir}/scripts/ths-hotkeys.mjs 即可执行同花顺 GUI 自动化。
activate 激活同花顺窗口refresh 发送 F5watchlist 发送 F6limitup 发送 Ctrl+Z(涨停板)gainrank 输入 60 + Entermarket_sh 发送 F3market_sz 发送 F4entrust 发送 F12morning_check:F3 -> F4 -> Ctrl+Z -> 60 -> F6intraday_scan:F5 -> Ctrl+Z -> 60 -> F6after_close_review:Ctrl+Z -> 60 -> F6prep_buy:F6 -> F12(买入前准备)prep_sell:F6 -> F12(卖出前准备)focus <code>:定位到指定股票(6 位代码)quote <code>:定位并查看该股票报价/分时kline <code>:定位并切到 K 线(F5)detail <code>:定位并打开成交明细(F1)fundamentals <code>:定位并打开 F10 资料prep_buy <code>:自选 -> 定位股票 -> F12(买入前准备)prep_sell <code>:自选 -> 定位股票 -> F12(卖出前准备)plan_short:短线计划(指数 + 涨停 + 涨幅 + 自选 + 刷新复查)plan_swing:波段计划(指数 + 综合排行 + 自选 + K 线)plan_scalp:超短计划(涨停与涨幅高频扫描)batch_quote <csv>:批量查看报价/分时batch_kline <csv>:批量切 K 线batch_f10 <csv>:批量查看 F10(看完自动返回)batch_quote_file [path]:从文件读取代码并批量查看报价batch_kline_file [path]:从文件读取代码并批量切 K 线batch_f10_file [path]:从文件读取代码并批量查看 F10其中 <csv> 是逗号分隔的 6 位股票代码,如:
600519,300750,002594其中 [path] 是股票清单文件路径,省略时默认:
{baseDir}/scripts/watchlist.txt调用示例:
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action limitup
组合动作示例:
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action morning_check
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action prep_buy
参数化动作示例:
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action focus --arg 600519
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action fundamentals --arg 300750
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action prep_buy --arg 002594
一键计划示例:
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action plan_short
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action plan_swing
批量巡检示例:
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action batch_kline --arg "600519,300750,002594"
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action batch_f10 --arg "000001,600036,601318"
文件批量巡检示例:
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action batch_kline_file
powershell
node "{baseDir}/scripts/ths-hotkeys.mjs" --action batch_f10_file --arg "D:\quant\watchlist.txt"
若 Windows 下 COM 被安全策略禁用,退化为手工快捷键。
模板口令推荐脚本动作执行短线开盘检查morning_check开始盘中巡检intraday_scan做收盘复盘after_close_review执行短线全流程计划plan_short执行波段计划plan_swing执行超短计划plan_scalp准备买入某股票prep_buy <code>准备卖出某股票prep_sell <code>打开某股票看 K 线kline <code>打开某股票看 F10fundamentals <code>批量看自选 K 线batch_kline <csv>批量看自选 F10batch_f10 <csv>从文件批量看 K 线batch_kline_file [path]从文件批量看 F10batch_f10_file [path]
ths-hotkeys.mjs 每次执行都会自动写日志到:
{baseDir}/scripts/logs/trading-YYYY-MM-DD.log日志格式:
时间 | 状态 | action=动作名 | arg=参数 | 详情示例:
text
2026-03-17 10:12:03 | OK | action=plan_short | arg=- | 执行成功
2026-03-17 10:20:11 | ERROR | action=focus | arg=abc | 缺少或非法股票代码
新增脚本: {baseDir}/scripts/risk-calc.mjs
用途:
调用示例(long):
bash
node "{baseDir}/scripts/risk-calc.mjs" --capital 200000 --riskPct 1 --entry 25.8 --stop 24.9 --target 28 --side long
调用示例(short):
bash
node "{baseDir}/scripts/risk-calc.mjs" --capital 200000 --riskPct 1 --entry 25.8 --stop 26.6 --target 24.2 --side short
输出为 JSON,可直接让 Agent 读取后总结为:
当用户下达操作指令时,按如下结构回复并执行:
收到目标:一句话复述用户要做什么执行步骤:说明本次只执行第 1 步(最小动作)工具调用:执行一次 exec结果反馈:成功/失败 + 下一步建议交易确认:若涉及下单,要求用户明确确认后再继续示例(用户:帮我看涨停):
我先打开同花顺并进入涨停板列表。已进入涨停板页面,是否继续按连板数筛选?新增脚本: {baseDir}/scripts/run-all.mjs
作用:
示例:
bash
node "{baseDir}/scripts/run-all.mjs" --mode short --batch kline
bash
node "{baseDir}/scripts/run-all.mjs" --mode swing --watchlist "{baseDir}/scripts/watchlist.txt" --batch f10
bash
node "{baseDir}/scripts/run-all.mjs" --mode short --symbols 600519,300750 --batch quote --capital 200000 --riskPct 1 --entry 25.8 --stop 24.9 --target 28
说明:
run-all.mjs 仅在 Windows + Node 场景下执行 GUI 动作{baseDir}/scripts/logs/run-all-*.json新增示例: {baseDir}/scripts/trading-plan.sample.json
可自定义动作序列,然后执行:
bash
node "{baseDir}/scripts/run-all.mjs" --plan-file "{baseDir}/scripts/trading-plan.sample.json"
计划文件规则:
actions 为动作数组,动作必须是 ths-hotkeys.mjs 支持的名称
支持 action:arg 形式,例如:
batch_kline_file:scripts/watchlist.txtfocus:600519新增脚本: {baseDir}/scripts/trade-journal.mjs
新增记录:
bash
node "{baseDir}/scripts/trade-journal.mjs" add --symbol 600519 --side buy --entry 1688 --stop 1650 --target 1760 --shares 100 --strategy short --note "回踩均线"
查看最近记录:
bash
node "{baseDir}/scripts/trade-journal.mjs" list --limit 20
日志文件:
{baseDir}/scripts/logs/trade-journal.jsonlscripts/ths-hotkeys.mjs:单步、组合、参数化、计划、批量、日志落盘scripts/watchlist.txt:默认批量巡检清单scripts/risk-calc.mjs:风控仓位计算scripts/run-all.mjs:一体化流程编排scripts/trading-plan.sample.json:可编辑的策略计划模板scripts/trade-journal.mjs:交易日志增查工具