{"id":"6f5f39dc-b90b-4fee-9dfc-9cb8381a98d0","slug":"clawhub-turkeydick-gmquant","name":"掘金量化skill","description":"掘金量化 Python SDK 专家技能。 当用户提到掘金、gm、gm.api、掘金量化、掘金策略、掘金SDK、掘金终端、 量化策略开发、回测、实时行情、订阅行情、历史行情、下单、委托、持仓、 order_volume、subscribe、history、set_token、get_symbols、get_sym...","canonicalUrl":"https://www.xpersona.co/agent/clawhub-turkeydick-gmquant","sourceUrl":"https://clawhub.ai/turkeydick/gmquant","homepage":"https://clawhub.ai/turkeydick/skills/gmquant","source":"CLAWHUB","vendor":{"slug":"clawhub","label":"Clawhub","url":"https://clawhub.ai/turkeydick/skills/gmquant"},"protocols":["OPENCLEW"],"capabilities":[],"trustScore":null,"trustConfidence":"unknown","artifactCount":0,"benchmarkCount":0,"lastRelease":"1.0.3","freshnessAt":"2026-10-11T07:26:45.740Z","freshnessLabel":"Oct 11, 2026","securityReviewed":true,"openapiReady":false,"stats":[{"label":"Trust score","value":"Unknown"},{"label":"Compatibility","value":"OpenClaw"},{"label":"Freshness","value":"Oct 11, 2026"},{"label":"Vendor","value":"Clawhub"},{"label":"Artifacts","value":"0"},{"label":"Benchmarks","value":"0"},{"label":"Last release","value":"1.0.3"}],"factsPreview":[{"factKey":"vendor","category":"vendor","label":"Vendor","value":"Clawhub","href":"https://clawhub.ai/turkeydick/skills/gmquant","sourceUrl":"https://clawhub.ai/turkeydick/skills/gmquant","sourceType":"profile","confidence":"medium","observedAt":"2026-10-11T07:26:45.809Z","isPublic":true},{"factKey":"protocols","category":"compatibility","label":"Protocol compatibility","value":"OpenClaw","href":"https://www.xpersona.co/api/v1/agents/clawhub-turkeydick-gmquant/contract","sourceUrl":"https://www.xpersona.co/api/v1/agents/clawhub-turkeydick-gmquant/contract","sourceType":"contract","confidence":"medium","observedAt":"2026-10-11T07:26:45.809Z","isPublic":true},{"factKey":"traction","category":"adoption","label":"Adoption signal","value":"1.1K downloads","href":"https://clawhub.ai/turkeydick/gmquant","sourceUrl":"https://clawhub.ai/turkeydick/gmquant","sourceType":"profile","confidence":"medium","observedAt":"2026-10-11T07:26:45.809Z","isPublic":true},{"factKey":"latest_release","category":"release","label":"Latest release","value":"1.0.3","href":"https://clawhub.ai/turkeydick/gmquant","sourceUrl":"https://clawhub.ai/turkeydick/gmquant","sourceType":"release","confidence":"medium","observedAt":"2026-05-26T09:22:10.719Z","isPublic":true},{"factKey":"handshake_status","category":"security","label":"Handshake status","value":"UNKNOWN","href":"https://www.xpersona.co/api/v1/agents/clawhub-turkeydick-gmquant/trust","sourceUrl":"https://www.xpersona.co/api/v1/agents/clawhub-turkeydick-gmquant/trust","sourceType":"trust","confidence":"medium","observedAt":null,"isPublic":true}],"highlights":["1.1K downloads","Trust evidence available"],"agentCard":{"name":"掘金量化skill","description":"掘金量化 Python SDK 专家技能。 当用户提到掘金、gm、gm.api、掘金量化、掘金策略、掘金SDK、掘金终端、 量化策略开发、回测、实时行情、订阅行情、历史行情、下单、委托、持仓、 order_volume、subscribe、history、set_token、get_symbols、get_sym...","source":"CLAWHUB","sourceId":"clawhub:s1720w1mawags81sjr872kwe1185smvf:gmquant","homepage":"https://clawhub.ai/turkeydick/skills/gmquant","repository":"https://clawhub.ai/turkeydick/gmquant","documentation":"https://www.xpersona.co/agent/clawhub-turkeydick-gmquant","protocols":["OPENCLEW"],"examples":[{"kind":"example","language":"python","snippet":"\"\"\"\n策略名称：{name}\n策略描述：{description}\n生成时间：{date}\n\"\"\"\n\nimport sys, os, io\nsys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')\n\nfrom gm.api import *\n\n# ============================================================\n# 配置区 —— 用户可通过修改此处调整策略参数\n# ============================================================\nSYMBOLS = 'SHSE.600519,SZSE.000001'      # 标的（逗号分隔）\nFREQUENCY = '1d'                          # K线周期：1d/60s/300s/tick\nCOUNT = 20                                # 订阅K线数量（context.data滑窗大小）\n\n# 交易参数\nORDER_TYPE = OrderType_Market              # 下单方式：Market(市价) / Limit(限价)\nPOSITION_PCT = 0.2                        # 单只股票仓位占比（0~1）\n\n# 回测参数\nBACKTEST_START = '2024-01-02 09:30:00'\nBACKTEST_END   = '2025-12-31 15:30:00'\nINITIAL_CASH   = 1000000                  # 初始资金\nCOMMISSION     = 0.00025                  # 手续费率\nSLIPPAGE       = 0.001                    # 滑点\n\n\n# ============================================================\n# 策略逻辑\n# ============================================================\n\ndef init(context):\n    \"\"\"初始化：订阅行情\"\"\"\n    log.info(f'策略启动 | 标的:{SYMBOLS} | 周期:{FREQUENCY}')\n    subscribe(symbols=SYMBOLS, frequency=FREQUENCY, count=COUNT)\n\n    # 存储策略状态\n    context.last_signal = {}  # {symbol: last_signal_time}\n\n\ndef on_bar(context, bars):\n    \"\"\"每根K线触发\"\"\"\n    for bar in bars:\n        symbol = bar['symbol']\n        try:\n            _handle_bar(context, symbol)\n        except Exception as e:\n            log.error(f'处理{symbol}异常: {e}')\n\n\ndef on_tick(context, tick):\n    \"\"\"tick级别回调（如订阅了tick会走这里）\"\"\"\n    pass\n\n\ndef _handle_bar(context, symbol):\n    \"\"\"单只标的策略逻辑\"\"\"\n\n    # 1. 获取历史数据（滑窗内）—— 注意返回 DataFrame\n    data = context.data(symbol=symbol, frequency=FREQUENCY, count=COUNT)\n    if data is None or len(data) < COUNT:\n        return\n\n    # 2. 获取当前持仓 —— get_position() 不带参数，返回全部持仓列表\n    all_positions = get_position()\n    position = None\n    if all_positions:\n        for p in all_positions:\n            sym = p.get('symbol') if isinstance(p, dict) else (p.s"},{"kind":"example","language":"bash","snippet":"python scripts/run_strategy.py --strategy <策略文件路径> --strategy-id <你的策略ID> [--mode backtest|live] [--token YOUR_TOKEN]"}]}}