命令行使用手册 ===================== 简介 -------- 功夫 CLI 系统是基于 Linux 操作系统的命令行监控交互界面,告别 Linux shell 小黑屋,通过简洁的界面,所有交易所需要数据一览无遗,操作灵活、简单。 安装 -------- 下载含有KungFu-CLI功能的功夫交易系统Linux安装包 Kungfu-version.rpm 或者是 Kungfu-version.AppImage,对于 rpm 安装包,安装命令为 :: yum install Kungfu-version.rpm Kungfu-version.AppImage 需要将 appimage 抽出,生成 squashfs-root 文件夹(该文件夹名称以系统生成为准),再将其内容复制到 /opt/Kungfu 目录下 :: ./Kungfu-version.AppImage --appimage-extract cp -R squashfs-root/* /opt/Kungfu 在Linux系统安装成功后,需要把kungfu/resources/下的文件权限改为777 :: sudo chmod 777 -R /opt/Kungfu/resources/ 文件路径 -------- 安装完成后,CLI的文件路径如下 :: cd /opt/Kungfu/resources/kungfu-cli KF_home资源目录(账户/行情信息/数据/key文件/日志文件/缓存等数据存放) 路径如下 :: cd ~/.config/kungfu/home 账户/行情/策略的添加信息存放路径 :: cd ~/.config/kungfu/home/runtime/system/etc/kungfu/db/live/config.db 功能说明 -------- 监控所有进程 ~~~~~~~~~~~~ 在KungFu CLI文件目录内,输入命令 :: $ ./kungfu-cli monit .. image:: _images/guide-cli-process-editor-monitor.png :width: 1500px :height: 1000px 界面左侧会显示系统内所有的进程,其中包括: - MASTER:主控进程 - LEDGER:数据进程 - MD:行情柜台进程 - TD:交易柜台进程 - Strat:策略进程 同时显示每一个进程对应的状态,通过上下键移动光标选择进程,选中后通过回车键可以启动或停止该进程;在界面右侧会显示进程的实时运行日志 master进程默认关闭,需要手动开启master进程后,系统才能正常运行。 添加账户 ~~~~~~~~~~~~ 在KungFu CLI文件目录内,输入命令行 :: $ ./kungfu-cli add 通过上下按键选择添加账户,然后选择账户的柜台,目前支持sim模拟柜台,CTP期货柜台以及XTP股票柜台,回车确定,然后输入对应的账户表单 .. image:: _images/guide-cli-account-add.png :width: 1500px :height: 130px 添加XTP柜台账户字段 .. list-table:: 添加XTP柜台账户字段 :header-rows: 1 :width: 1000px * - 字段 - 字段含义 * - account_name - 账户别名 * - account_id - 账户名称 * - password - 账户密码 * - td_ip - 交易柜台IP地址 * - td_port - 交易柜台端口 * - software_key - 用户开发软件Key * - client_id - 1~99任意数字,用于区分同一账户多点登陆 * - account_code - 账户授权码 (官网上方–许可购买) * - md_ip - 行情柜台IP地址 * - md_port - 行情柜台端口 .. list-table:: 添加CTP柜台账户字段 :header-rows: 1 :width: 1000px * - 字段 - 字段含义 * - account_name - 账户别名(例如:ctp测试) * - account_id - 账户名称(例如:089270) * - password - 账户密码(例如:123456) * - broker_id - 券商代码(例如:9999) * - auth_code - 授权码,实盘由券商提供,模拟盘为 0000000000000000 * - product_info - 软件信息,KUNGFU * - app_id - 申请授权码的时候提交的id,实盘填写 TAURUS_KUNGFU_2.0,模拟盘填写 simnow_client_test * - td_uri - 交易柜台地址 (以 “tcp://“ 开头)(例:tcp://180.168.146.187:11***) * - broker_margin_ratio - 开启请求对应Broker保证金比例,不开启则使用交易所默认保证金比例 * - account_code - 账户授权码 (官网上方–许可购买) * - md_uri - 行情柜台地址(以 “tcp://“ 开头)(例:tcp://180.168.146.187:11***) 添加策略 ~~~~~~~~~~~~ 在KungFu CLI文件目录内,输入命令 :: $ ./kungfu-cli add 通过上下按键选择添加策略,选择后续输入策略名称(不能与已有的策略名称重复)以及策略的本地路径就可完成策略添加 .. image:: _images/guide-cli-strategy-add.png :width: 1500px :height: 130px 开启极速模式 ~~~~~~~~~~~~~~ 在KungFu CLI文件目录内,输入命令 :: $ ./kungfu-cli config 通过上下按键选择极速模式 performance , 然后回车 y .. image:: _images/guide-cli-speed-mode.png :width: 1500px :height: 130px 开启bar行情 ~~~~~~~~~~~~~~ 在KungFu CLI文件目录内,输入命令 :: $ ./kungfu-cli config 通过上下按键选择 bar 行情,然后回车选择开启bar行情的柜台,选择bar的频率 .. image:: _images/guide-cli-open-bar.png :width: 1500px :height: 500px 使用本地Pyhon ~~~~~~~~~~~~~~~ 注意 : Python版本最好是 3.7.9 , 3.7.10也可以,但是3.8是绝对不可以的 在KungFu CLI文件目录内,输入命令 :: $ ./kungfu-cli config 通过上下按键选择 strategy,使用本地Python , 填写你本地Python的路径,回车 yes (当不在使用本地Python的时候, 将 [Use Local Python] 这个选项为 No) .. image:: _images/guide-cli-loacl-python.png :width: 1500px :height: 200px :: $ pip install ../kungfu-resources/python/kungfu-2.3.8-py3-none-any.whl 下载 .whl文件 注意 : 下载.whl文件使用的pip命令需要是上面选择的本地Python对应的pip包. 可以 which pip查看pip的地址,然后看与其同级目录下的Python是否符合要求,符合就可以填写到上面Python路径。 监控单进程 ~~~~~~~~~~~~ 在KungFu CLI文件目录内,输入命令 :: $ ./kungfu-cli monit -l 界面显示系统内所有的账户进程以及策略进程,通过上下键移动光标选择需要监控的进程,回车确认 .. image:: _images/guide-cli-singleProcess-monitor-1.png :width: 1500px :height: 200px 当选中账户进程,界面会显示该账户的详细情况,在界面的左上方会显示账户的行情进程状态以及交易进程状态,通过上下键移动光标,回车键进行启动和关闭进程 .. image:: _images/guide-cli-singleProcess-monitor-2.png :width: 1500px :height: 1000px - :ref:`Assets窗口`,显示当前账户资金盈亏信息 - :ref:`Positions窗口`,显示当前账户的持仓信息 - :ref:`Order Records(3days)窗口`,显示该账户三天内的委托记录 - :ref:`Trade Records(3days)窗口`,显示该账户三天内的成交记录 - Cancel All Order:撤单按钮,选中撤单按钮后,通过回车键可以对该账户下所有未完成委托进行撤单操作 当选中策略进程,界面会显示该策略的详细情况,在界面的左上方会显示策略的运行情况,可以通过回车键进行启动和关闭进程 .. image:: _images/guide-cli-singleProcess-monitor-3.png :width: 1500px :height: 1000px - :ref:`Assets窗口`,显示当前策略资金盈亏信息 - :ref:`Positions窗口`,显示当前策略的持仓信息 - :ref:`Order Records(3days)窗口`,显示该策略三天内的委托记录 - :ref:`Trade Records(3days)窗口`,显示该策略三天内的成交记录 - Cancel All Order:撤单按钮,选中撤单按钮后,通过回车键可以对该策略下所有未完成委托进行撤单操作 切换行情 ~~~~~~~~~~~~ 在KungFu CLI文件目录内,输入命令 :: $ ./kungfu-cli switchmd 界面会显示系统内所有的行情柜台,通过上下键移动光标,选择需要切换行情账户的行情柜台,回车确认 .. image:: _images/guide-cli-switch-price-1.png :width: 1500px :height: 170px .. image:: _images/guide-cli-switch-price-2.png :width: 1500px :height: 170px 删除账户/策略 ~~~~~~~~~~~~~~ 在KungFu CLI文件目录内,输入命令 :: $ ./kungfu-cli remove 界面会显示当前系统内的所有账户以及策略,通过上下键移动光标,选中需要删除的账户或者策略,回车删除 .. image:: _images/guide-cli-delete-account.png :width: 1500px :height: 170px 获取帮助 ~~~~~~~~~~~~~~ 在KungFu CLI文件夹内,输入命令行 :: $ ./kungfu-cli -h 界面会显示KungFu CLI所有支持的命令以及相应的解释 .. image:: _images/guide-cli-get-help.png :width: 1500px :height: 1000px 窗口字段 -------- .. _Assets窗口: Asets 窗口 ~~~~~~~~~~~~~~~~~ .. list-table:: :width: 100% :align: left * - 字段 - 字段含义 * - AccountId(ClientId) - 账户名称 or 策略名称 * - InitialEquity - 初始权益 * - StaticEquity - 静态权益 * - DynamicEquity - 动态权益 * - RealizedPnl - 实现盈亏 * - UnRealizedPnl - 未实现盈亏 * - Avail - 可用资金 * - MarketValue - 市值(股票) * - Margin - 保证金(期货) .. _Positions窗口: Positions 窗口 ~~~~~~~~~~~~~~~~~ .. list-table:: :width: 100% :align: left * - 字段 - 字段含义 * - AccountId(ClientId) - 账户名称 or 策略名称 * - InitialEquity - 初始权益 * - Yesterday - 昨仓 * - Today - 今仓 * - Total - 总持仓 * - Open - 开仓均价 * - Last - 最新价 * - UnrealPnl - 未实现盈亏 .. _Order Records(3days)窗口: Order Records(3days) 窗口 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. list-table:: :width: 100% :align: left * - 字段 - 字段含义 * - UpdateTime - 更新时间 * - Ticker - 标的代码 * - Side - 买卖方向 * - Offset - 开平方向 * - Price - 委托价格 * - Filled/Not - 已完成/全部 * - Status - 委托状态 * - Strate(Account) - 发出委托的策略 or 账户 .. _Trade Records(3days)窗口: Trade Records(3days) 窗口 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. list-table:: :width: 100% :align: left * - 字段 - 字段含义 * - UpdateTime - 更新时间 * - Ticker - 标的代码 * - Side - 买卖方向 * - Offset - 开平方向 * - Price - 成交价格 * - Filled/Not - 已完成/全部 * - Strate(Account) - 发出委托的策略 or 账户