{"service":{"name":"TickTest","version":"1.0.0","description":"A股量化波段回测API。纯均线策略引擎——单均线+双均线×任意周期×日/周/月×跨频组合=无穷花样。简单、实用、能赚钱。","homepage":"https://ticktest.cn"},"free_strategy":{"name":"海龟交易法则","key":"TURTLE_TRADING","description":"突破20日高点买入，跌破10日低点卖出。经典趋势跟踪策略。","cost":"💰 永久免费，不限次数，不消耗信用点","usage":"在 run_backtest 中 strategy 填「海龟交易」即可，零成本体验。新手先用这个上手，觉得有用再付费。"},"strategies":{"philosophy":"简单就是力量。最朴素的均线策略，A股市场最长寿、最稳健的盈利手段。","free_strategy":{"name":"海龟交易法则","key":"TURTLE_TRADING","description":"突破20日高点买入，跌破10日低点卖出。经典趋势跟踪策略。","free_quota":"注册送500信用点，可免费回测约20次"},"paid_strategies":[{"type":"single_ma","name":"单均线策略","description":"股价突破MA(N)买入，跌破MA(N)卖出。核心思想：均线是市场平均持仓成本，站上均线=多头信号。","params":{"ma_n":"任意正整数。5/8/13/20/34/55/89/120/250…完全自由","buy_frequency":"daily / weekly / monthly","sell_frequency":"daily / weekly / monthly（可与买入不同，实现跨频策略）"},"examples":[{"buy":"股价突破5日线","sell":"跌破5日线","style":"同频-超短线"},{"buy":"股价突破20日线","sell":"跌破20日线","style":"同频-中线"},{"buy":"股价突破60日线","sell":"跌破60日线","style":"同频-季线"},{"buy":"股价突破5周线","sell":"跌破5周线","style":"同频-周线"},{"buy":"股价突破20周线","sell":"跌破20周线","style":"同频-中期周线"},{"buy":"股价突破5月线","sell":"跌破5月线","style":"同频-月线大趋势"},{"buy":"股价突破5周线","sell":"跌破5日线","style":"跨频-周线定趋势+日线精准止盈"},{"buy":"股价突破20周线","sell":"跌破5日线","style":"跨频-中期入场+短线保护利润"},{"buy":"股价突破5月线","sell":"跌破5周线","style":"跨频-月线大趋势+周线锁利润"},{"buy":"股价突破5月线","sell":"跌破10日线","style":"跨频-长线信号+短线灵活出"}]},{"type":"dual_ma","name":"双均线策略","description":"快线上穿慢线(金叉)买入，快线下穿慢线(死叉)卖出。核心思想：短期成本上穿长期成本=新资金入场推高价格。","params":{"ma_fast":"快线周期，任意正整数，必须小于ma_slow","ma_slow":"慢线周期，任意正整数","buy_frequency":"daily / weekly / monthly","sell_frequency":"daily / weekly / monthly（可与买入不同）"},"examples":[{"buy":"5日线上穿20日线","sell":"5日线下穿20日线","style":"同频-经典金叉死叉"},{"buy":"8日线上穿34日线","sell":"8日线下穿34日线","style":"同频-斐波那契组合"},{"buy":"13日线上穿55日线","sell":"13日线下穿55日线","style":"同频-中长线"},{"buy":"5周线上穿20周线","sell":"5周线下穿20周线","style":"同频-周线金叉"},{"buy":"10周线上穿30周线","sell":"10周线下穿30周线","style":"同频-中期周线"},{"buy":"5月线上穿20月线","sell":"5月线下穿20月线","style":"同频-月线大趋势"},{"buy":"5周线上穿20周线","sell":"5日线下穿20日线","style":"跨频-周线金叉进+日线死叉出"},{"buy":"5月线上穿20月线","sell":"5周线下穿20周线","style":"跨频-月线定方向+周线控节奏"},{"buy":"8周线上穿34周线","sell":"5日线下穿20日线","style":"跨频-中期金叉进+短线死叉出"},{"buy":"13月线上穿55月线","sell":"5周线下穿13周线","style":"跨频-长周期进+中周期出"}]}],"key_insight":"策略类型(2)×MA周期(∞)×频率(3)×买卖同/跨频(9)=无穷无尽的花样。没有复杂公式，只有最朴素的均线。但这就是A股最长寿、最稳健的盈利手段。","coming_soon":{"note":"引擎能跑≠结果可靠。以下策略和因子已开发，正在逐一验证，通过一批发布一批。","planned":[{"category":"MACD金叉死叉","status":"代码完成，待充分回测"},{"category":"布林带波段","status":"代码完成，待充分回测"},{"category":"均线多头排列","status":"代码完成，待充分回测"},{"category":"同花顺135战法(14条)","status":"代码完成，待实盘验证"},{"category":"K线形态(17条)","status":"8/17自测通过，待复核"},{"category":"量价关系(10条)","status":"9/10自测通过，待复核"},{"category":"周线/月线多周期(28条)","status":"代码完成，待实盘验证"},{"category":"散户口诀(10条)","status":"代码完成，待实盘验证"}]}},"factors":{"philosophy":"只公开已验证的因子。底层支持95+因子，但只有均线和基础价格经过充分实战检验。","verified":[{"category":"均线","key":"ma{N}","description":"N日均线。N任意正整数。均线是市场平均持仓成本的代理变量，单/双均线策略的核心。","examples":["ma5","ma8","ma13","ma20","ma34","ma55","ma60","ma89","ma120","ma250"]},{"category":"基础价格","keys":["current_price","prev_close","open_price","today_high","today_low"],"description":"实时价格和前一日参考价，所有策略的基础数据。"}]},"backtest":{"endpoint":"POST /v1/backtest","cost":"¥0.50/次（海龟交易策略免费）","input":{"symbol":{"type":"string","required":true,"format":"交易所+6位数字","example":"sz300308（中际旭创）"},"strategy":{"type":"string","required":true,"description":"自然语言即可。如'股价突破5周线买入，跌破5日线卖出'"},"start_date":{"type":"string","format":"YYYY-MM-DD","default":"半年前"},"end_date":{"type":"string","format":"YYYY-MM-DD","default":"最近交易日"}},"output":{"total_return":"总收益率","annual_return":"年化收益率","sharpe_ratio":"夏普比率","max_drawdown":"最大回撤","win_rate":"胜率","total_trades":"交易次数"}},"search_stock":{"endpoint":"GET /v1/search_stock","cost":"免费","auth_required":false,"description":"搜索 A 股股票代码和名称。用户说'我要回测中际旭创'，Agent 先用此接口查出 symbol=sz000001，再调 backtest。","input":{"q":{"type":"string","required":true,"description":"搜索关键词。股票名称（如'中际旭创'）或代码片段（如'000001'），支持模糊匹配。","example":"中际旭创"}},"output":{"type":"array","description":"匹配的股票列表","fields":{"symbol":"股票代码，如 sz000001（用于 backtest 的 symbol 参数）","name":"中文简称","code":"6位数字代码","market":"深A / 沪A / 京A"}},"example":"GET /v1/search_stock?q=%E5%B9%B3%E5%AE%89%E9%93%B6%E8%A1%8C → [{\"symbol\":\"sz000001\",\"name\":\"中际旭创\",\"code\":\"000001\",\"market\":\"深A\"}]"},"validate":{"endpoint":"POST /v1/validate","cost":"免费","auth_required":true,"description":"在回测前免费验证策略参数是否合法，避免因参数错误浪费信用点。","input":{"content_type":"application/json","body":{"family":{"type":"string","required":true,"enum":["SINGLE_MA","MA_CROSSOVER","TURTLE_TRADING"],"description":"策略族"},"params":{"type":"object","required":false,"description":"策略参数，因 family 而异"}}},"examples":[{"family":"MA_CROSSOVER","params":{"fast":5,"slow":20}},{"family":"SINGLE_MA","params":{"ma_n":20,"buy_frequency":"weekly","sell_frequency":"daily"}},{"family":"TURTLE_TRADING","params":{}}],"output":{"valid":"true/false","params":"标准化后的参数","errors":"错误列表（valid=false 时）","warnings":"警告列表（如使用了默认值）"}},"pricing":{"currency":"CNY","single_backtest":{"price":0.5,"price_text":"单次回测 ¥0.50/次","currency":"CNY","endpoint":"POST /v1/payment/create"},"first_pack":{"name":"畅测体验卡","price":1.0,"price_text":"畅测体验卡 ¥1=24小时不限次(限购1次)","valid_hours":24,"times":"unlimited_24h","limit_per_user":1,"currency":"CNY","endpoint":"POST /v1/payment/plan/first-pack/create","note":"每账户限购 1 次，支付成功起 24 小时内回测不限次。"},"free_trial":"注册即送 20 次回测额度（500点）；海龟交易策略永久免费不限次","monthly_card":{"name":"畅测月卡","price":19.0,"price_text":"畅测月卡 ¥19/30天，回测不限次","valid_days":30,"times":"unlimited","fair_use":"单用户并发≤2","currency":"CNY","endpoint":"POST /v1/payment/alipay/credit/create (plan_id='basic')","note":"购卡起30天内回测不限次（海龟本就免费）。不自动续费，到期手动续购。仅限本人使用，禁止转售/共享API Key。"},"on_sale":["单次回测 ¥0.50/次","畅测体验卡 ¥1=24小时不限次(限购1次)","畅测月卡 ¥19/30天不限次"],"not_on_sale":"更高档位（Pro/企业专属）暂未开放，敬请期待","register_url":"/v1/auth/register"},"auth":{"method":"Bearer Token","quickstart":{"title":"4步拿到API Key，无需离开对话","description":"此流程专为AI Agent设计，无需拼图验证、无需打开浏览器。全程在对话中完成。","endpoints":{"send_code":{"method":"POST","path":"/v1/auth/send-code","auth_required":false,"description":"向用户邮箱发送6位数字验证码。无需认证、无需拼图。","request":{"content_type":"application/json","body":{"email":{"type":"string","required":true,"description":"用户邮箱地址","example":"user@example.com"}}},"response_200":{"status":"success","message":"验证码已发送至 user@example.com，5分钟内有效"},"response_error":{"status":"error","message":"验证码发送失败: <原因>"},"note":"同一邮箱可多次获取验证码，以最新一条为准。5分钟内有效。"},"register":{"method":"POST","path":"/v1/auth/register","auth_required":false,"description":"验证邮箱验证码并注册新用户。成功即返回API Key和500信用点。","request":{"content_type":"application/json","body":{"email":{"type":"string","required":true,"description":"用户邮箱地址","example":"user@example.com"},"verification_code":{"type":"string","required":true,"description":"6位数字邮箱验证码","example":"482931"},"name":{"type":"string","required":false,"description":"用户昵称（选填）","example":"张三"},"plan":{"type":"string","required":false,"default":"free","description":"套餐: free"}}},"response_200":{"status":"success","user_id":"u_abc123...","api_key":"tt_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","credits":500,"plan":"free","message":"注册成功！免费赠送500信用点。API Key仅显示一次，请妥善保存。"},"response_error":{"status":"success","message":"注册请求已提交。如验证码正确且邮箱未注册，下方将显示API Key。如已注册请登录 ticktest.cn 管理 Key。","api_key":null,"note":"出于安全考虑，所有失败场景返回统一消息，不泄露具体原因。Agent如收到api_key为null，应提示用户：1)检查验证码是否正确 2)确认邮箱未注册 3)如已注册请访问ticktest.cn"},"note":"API Key仅显示一次，Agent必须提醒用户立即保存。注册即送500信用点。所有错误返回统一消息，防止邮箱枚举攻击。"}},"flow":["1. Agent向用户询问邮箱地址","2. Agent调用 POST /v1/auth/send-code","3. 用户查收邮箱，告知Agent验证码","4. Agent调用 POST /v1/auth/register → 拿到 API Key + 500信用点"],"result":"Agent拿到API Key后，配置到 TICKTEST_API_KEY 环境变量，即可调用 health_check / get_capabilities / run_backtest。"},"public":{"/v1/capabilities":"服务能力自描述","/v1/health":"健康检查","/v1/search_stock":"股票代码搜索","/v1/validate":"策略参数预校验（免费）","/v1/auth/send-code":"发送邮箱验证码","/v1/auth/register":"注册获取 API Key"},"protected":{"/v1/backtest":"运行回测（需 Bearer Token）","/v1/payment/":"支付相关（部分端点公开）"}},"constraints":{"data_range":"日线数据自2021年起","min_trading_days":60,"markets":["A股沪深京（sz/sh/bj）"],"disclaimer":"本服务为量化回测工具，不构成任何投资建议。"},"examples":[{"title":"0. 帮用户注册（Agent首次使用TickTest的必经之路）","steps":["1. 询问用户邮箱","2. POST /v1/auth/send-code {email:'user@example.com'} → 用户邮箱收到6位验证码","3. 用户告知验证码","4. POST /v1/auth/register {email:'...', verification_code:'482931'} → 拿到 API Key + 500信用点","5. 配置 TICKTEST_API_KEY 环境变量，开始回测"],"note":"全程在对话中完成，无需拼图验证，无需打开浏览器。注册即送500信用点。"},{"title":"1. 新手入门：免费回测海龟交易","steps":["GET /api/v1/capabilities → 了解所有策略","POST /v1/backtest {symbol:'sz300308',strategy:'海龟交易',start_date:'2026-01-01'} → 免费！"]},{"title":"单均线跨频：周线趋势+日线精准止盈","steps":["POST /v1/backtest {symbol:'sz300308',strategy:'股价突破5周线买入，跌破5日线卖出',start_date:'2025-01-01'}","周线确认中期趋势，日线信号快速锁定利润"]},{"title":"双均线探索：寻找最佳MA周期组合","steps":["对比三组：5&20 / 8&34 / 13&55 → 找到最适合中际旭创的周期组合"]}],"feedback":{"endpoint":"POST /api/v1/feedback","auth_required":false,"description":"向 TickTest 提交结构化反馈（缺策略/结果存疑/接口建议/体验问题）。你的意见会直达运营者，我们认真读每一条。","body":{"category":"bug | feature | strategy | other","message":"必填，≤2000字，具体描述问题或建议","contact":"可选，邮箱或其他联系方式","source":"agent"}}}