您现在的位置是:主页 > news > 私募基金网站建设要求/商丘搜索引擎优化
私募基金网站建设要求/商丘搜索引擎优化
admin2025/5/21 21:13:58【news】
简介私募基金网站建设要求,商丘搜索引擎优化,二手车为什么做网站,dede页码的调用 网站一、TWAP算法和VWAP算法的介绍TWAP:在设定的时间范围内匀速下单,降低市场冲击,最小化与市场TWAP的偏差;VWAP:在设定的时间范围内对根据对市场成交量分布的预测进行下单,降低市场冲击,最小化与市…
私募基金网站建设要求,商丘搜索引擎优化,二手车为什么做网站,dede页码的调用 网站一、TWAP算法和VWAP算法的介绍TWAP:在设定的时间范围内匀速下单,降低市场冲击,最小化与市场TWAP的偏差;VWAP:在设定的时间范围内对根据对市场成交量分布的预测进行下单,降低市场冲击,最小化与市…

一、TWAP算法和VWAP算法的介绍
TWAP:在设定的时间范围内匀速下单,降低市场冲击,最小化与市场TWAP的偏差;
VWAP:在设定的时间范围内对根据对市场成交量分布的预测进行下单,降低市场冲击,最小化与市场VWAP的偏差;
二、TWAP算法和VWAP算法参数
开始时间:策略开始执行的时间(剔除非交易时间段)。如果开始时间早于策略下达时间点时,则使用下达时间作为开始时间
结束时间:策略停止执行的时间(剔除非交易时间段)。过了结束时间还未完成的数量,将会自动释放到指令。算法执行的区间段,时间越短,任务执行强度(委托频率和单笔委托量)越高
量比比例:策略的成交数量与策略执行期间市场的总成交量(不包括策略执行之前和结束之后的市场成交量)之比。对于跟量和跟价策略,量比比例参数是作为目标比例来参考;而对于其它策略,是作为上限来控制
委托最小金额:控制子单单笔委托的最小金额 该参数只适用于股票。A股单位为元
基准价格:算法模型的参考基准价格,子单限价单价格不能超过该价格的不利价位方向;当填入价格为0时,则不设置基准价
二、TWAP算法和VWAP算法示例源码
# coding=utf-8
from gm.api import *
from gm.model import DictLikeAlgoOrder
from gm.pb.account_pb2 import AlgoOrder
from datetime import timedelta
"""
算法单新增api在 sdk 的 gm.api.trade.py 文件里, 有如下函数, 具体函数签名可点进去看api文档
algo_order
algo_order_cancel
algo_order_pause
get_algo_child_orders
get_algo_orders
增加的算法单的状态常量
AlgoOrderStatus_Unknown = 0
AlgoOrderStatus_Resume = 1 # 恢复母单
AlgoOrderStatus_Pause = 2 # 暂停母单
AlgoOrderStatus_PauseAndCancelSubOrders = 3 # 暂停母单并撤子单
algo_param算法参数
time_start str 开始时间
time_end str 结束时间
part_rate flaot 量比比例 (0 ~ 1)
min_amount int 委托最小金额
"""
# TWAP算法和VWAP算法示例, 仅接口使用示例
def init(context):time = (context.now + timedelta(seconds=3)).strftime('%H:%M:%S')schedule(schedule_func=algo, date_rule='1d', time_rule=time)
def algo(context):# 算法名algo_name = 'twap'# 算法参数格式如下algo_param = {'time_start': '14:00:00','time_end': '16:00:00','part_rate': 0.5, 'min_amount': 1000}symbol = 'SHSE.600008'# 基准价, 算法母单需要是限价单price = current(symbol)[0]['price']aorder = algo_order(symbol=symbol, volume=2000, side=OrderSide_Buy, order_type=OrderSide_Buy,position_effect=PositionEffect_Open, price=price, algo_name=algo_name, algo_param=algo_param)# 提取算法单的 cl_ord_id 委托客户端ID, 用于其它api的查询, 或者撤单时用context.algo_order_id = aorder[0]['cl_ord_id']# 暂停或重启或者撤销算法母单# aorders = get_algo_orders(account='')# # 暂停订单,修改订单结构的母单状态字段 algo_status为1 恢复母单, 2 暂停母单, 3 暂停母单并撤子单# alorders01 = [{'cl_ord_id': aorders[0]['cl_ord_id'], 'account_id': aorders[0]['account_id'], 'algo_status': 3}]# algo_order_pause(alorders01)# 撤销指定cl_ord_id的算法母单# aorders = get_algo_orders(account='')# wait_cancel_orders = [{'cl_ord_id': aorders[0]['cl_ord_id'], 'account_id': aorders[0]['account_id']}]# algo_order_cancel(wait_cancel_orders)
def on_order_status(context, order):# 算法子单已成if order['status'] == 3:# 查询指定cl_ord_id算法母单的所有子单child_order = get_algo_child_orders(context.algo_order_id, account='')print('算法子单: child_order ={}'.format(child_order))
def on_algo_order_status(context, algo_order):# type: (Context, DictLikeAlgoOrder) -> NoReturn"""算法单状态事件. 参数algo_order为算法单的信息响应算法单状态更新事情,下算法单后状态更新时被触发3.0.125 后增加."""print('算法单状态变化: algo_order={}'.format(algo_order))# 算法母单已报if algo_order['status'] == 1:# 查询算法母单, 默认账户account填空aorders = get_algo_orders(account='')print('算法母单: aorders ={}'.format(aorders))
if __name__ == '__main__':'''strategy_id策略ID,由系统生成filename文件名,请与本文件名保持一致mode实时模式:MODE_LIVE回测模式:MODE_BACKTESTtoken绑定计算机的ID,可在系统设置-密钥管理中生成backtest_start_time回测开始时间backtest_end_time回测结束时间backtest_adjust股票复权方式不复权:ADJUST_NONE前复权:ADJUST_PREV后复权:ADJUST_POSTbacktest_initial_cash回测初始资金backtest_commission_ratio回测佣金比例backtest_slippage_ratio回测滑点比例'''run(strategy_id='strategy_id',filename='main.py',mode=MODE_LIVE,token='token',backtest_start_time='2020-11-02 08:00:00',backtest_end_time='2020-11-02 16:00:00',backtest_adjust=ADJUST_PREV,backtest_initial_cash=10000000,backtest_commission_ratio=0.0001,backtest_slippage_ratio=0.0001)
欢迎了解掘金量化智能算法交易:https://bbs.myquant.cn/topic/2016