{"id":19966679,"url":"https://github.com/truthhun/market-maker-trading","last_synced_at":"2025-07-02T10:32:14.159Z","repository":{"id":88501741,"uuid":"119640505","full_name":"TruthHun/Market-Maker-Trading","owner":"TruthHun","description":"做市商交易(期货)，基于Tick价差的交易策略","archived":false,"fork":false,"pushed_at":"2018-01-31T05:45:13.000Z","size":44,"stargazers_count":17,"open_issues_count":0,"forks_count":10,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-04T00:32:08.450Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.myquant.cn/docs/python_strategyies/109","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TruthHun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-01-31T05:42:10.000Z","updated_at":"2024-09-19T21:11:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"e34aaa69-7d1a-47de-9e6d-a7b92b8890a5","html_url":"https://github.com/TruthHun/Market-Maker-Trading","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TruthHun/Market-Maker-Trading","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruthHun%2FMarket-Maker-Trading","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruthHun%2FMarket-Maker-Trading/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruthHun%2FMarket-Maker-Trading/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruthHun%2FMarket-Maker-Trading/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TruthHun","download_url":"https://codeload.github.com/TruthHun/Market-Maker-Trading/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruthHun%2FMarket-Maker-Trading/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263120696,"owners_count":23416873,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T02:37:33.610Z","updated_at":"2025-07-02T10:32:14.144Z","avatar_url":"https://github.com/TruthHun.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 做市商交易(期货)\n基于Tick价差的交易策略\n\n\n## 源码\n```python\n# coding=utf-8\nfrom __future__ import print_function, absolute_import, unicode_literals\nfrom gm.api import *\n'''\n本策略通过不断对CZCE.CF801进行:\n买(卖)一价现价单开多(空)仓和卖(买)一价平多(空)仓来做市\n并以此赚取差价\n回测数据为:CZCE.CF801的tick数据\n回测时间为:2017-09-29 11:25:00到2017-09-29 11:30:00\n需要特别注意的是:本平台对于回测对限价单固定完全成交,本例子 仅供参考.\n敬请通过适当调整回测参数\n1.backtest_commission_ratio回测佣金比例\n2.backtest_slippage_ratio回测滑点比例\n3.backtest_transaction_ratio回测成交比例\n以及优化策略逻辑来达到更贴近实际的回测效果\n'''\ndef init(context):\n    # 订阅CZCE.CF801的tick数据\n    context.symbol = 'CZCE.CF801'\n    subscribe(symbols=context.symbol, frequency='tick')\ndef on_tick(context, tick):\n    quotes = tick['quotes'][0]\n    # 获取持有的多仓\n    positio_long = context.account().position(symbol=context.symbol, side=PositionSide_Long)\n    # 获取持有的空仓\n    position_short = context.account().position(symbol=context.symbol, side=PositionSide_Short)\n    print(quotes['bid_p'])\n    print(quotes['ask_p'])\n    # 没有仓位则双向开限价单\n    # 若有仓位则限价单平仓\n    if not positio_long:\n        # 获取买一价\n        price = quotes['bid_p']\n        print('买一价为: ', price)\n        order_target_volume(symbol=context.symbol, volume=1, price=price, order_type=OrderType_Limit,\n                            position_side=PositionSide_Long)\n        print('CZCE.CF801开限价单多仓1手')\n    else:\n        # 获取卖一价\n        price = quotes['ask_p']\n        print('卖一价为: ', price)\n        order_target_volume(symbol=context.symbol, volume=0, price=price, order_type=OrderType_Limit,\n                            position_side=PositionSide_Long)\n        print('CZCE.CF801平限价单多仓1手')\n    if not position_short:\n        # 获取卖一价\n        price = quotes['ask_p']\n        print('卖一价为: ', price)\n        order_target_volume(symbol=context.symbol, volume=1, price=price, order_type=OrderType_Limit,\n                            position_side=PositionSide_Short)\n        print('CZCE.CF801卖一价开限价单空仓')\n    else:\n        # 获取买一价\n        price = quotes['bid_p']\n        print('买一价为: ', price)\n        order_target_volume(symbol=context.symbol, volume=0, price=price, order_type=OrderType_Limit,\n                            position_side=PositionSide_Short)\n        print('CZCE.CF801买一价平限价单空仓')\nif __name__ == '__main__':\n    '''\n    strategy_id策略ID,由系统生成\n    filename文件名,请与本文件名保持一致\n    mode实时模式:MODE_LIVE回测模式:MODE_BACKTEST\n    token绑定计算机的ID,可在系统设置-密钥管理中生成\n    backtest_start_time回测开始时间\n    backtest_end_time回测结束时间\n    backtest_adjust股票复权方式不复权:ADJUST_NONE前复权:ADJUST_PREV后复权:ADJUST_POST\n    backtest_initial_cash回测初始资金\n    backtest_commission_ratio回测佣金比例\n    backtest_slippage_ratio回测滑点比例\n    backtest_transaction_ratio回测成交比例\n    '''\n    run(strategy_id='strategy_id',\n        filename='main.py',\n        mode=MODE_BACKTEST,\n        token='token_id',\n        backtest_start_time='2017-09-29 11:25:00',\n        backtest_end_time='2017-09-29 11:30:00',\n        backtest_adjust=ADJUST_PREV,\n        backtest_initial_cash=500000,\n        backtest_commission_ratio=0.00006,\n        backtest_slippage_ratio=0.0001,\n        backtest_transaction_ratio=0.5)\n```\n\n## 绩效\n![绩效](attach.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftruthhun%2Fmarket-maker-trading","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftruthhun%2Fmarket-maker-trading","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftruthhun%2Fmarket-maker-trading/lists"}