金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 7315|回复: 11

仓位自动管理问题

[复制链接]

61

主题

197

帖子

197

积分

等级: 免费版

注册:
2021-9-28
曾用名:
发表于 2022-3-25 14:46 | 显示全部楼层 |阅读模式
问一个问题:40个商品品种,等权重,每个品种100万资金,全部开仓是4000万资金,如果账户按照最大半仓,则账户总资金8000万,这是40个品种运行同一个策略,2只极端:以上如果只有1个品种开仓运行,49个品种不符合条件开仓,则只有100万资金分配,总资金是8000万的半仓,全年下来策略的资金收益会很低,这是一种情况;另一只情况是40个品种全部满足条件开仓,占用4000万资金,如果遇到策略失效类似问题,由于重仓,会导致大幅亏损,2种情况是如何解决资金管理的? 比如开仓品种太少,是否调节一些资金过去,或开仓品种太多,是否降低每个品种的份额?金字塔是如何用程序自动控制这种仓位管理的?
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-3-25 14:51 | 显示全部楼层
本帖最后由 技术010 于 2022-3-25 14:55 编辑

1、这个直接用代码来动态管理资金分配不太好实现,程序化运行是从第一个品种按顺序计算到最后一个。在计算出来一个品种满足开仓下单时,是不知道其他品种是否满足条件的。程序化下单并不是每次都40个品种计算完毕后,再统一下单的,是一个个分别计算再看是否触发下单的。
2、你可以先用股票池选股,后台直接监控股票池,对每次选出来的品种数量按照资金的百分比下单。

金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-3-25 14:57 | 显示全部楼层
资金的分配管理是需要你自己人工调整的。不管你上面的任何情况,对于交易而言,按资金比例开仓,只要将预分配的资金换算成手数进行下单。

其次:你所谓的极端和程序化没有关系,在交易之前除非你能准确预判后期的收益。否者不能避免
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

61

主题

197

帖子

197

积分

等级: 免费版

注册:
2021-9-28
曾用名:
 楼主| 发表于 2022-3-25 16:12 | 显示全部楼层
TB系统是在开盘时分别将每个品种是否开仓、做占资金份数写进一个数据库(类似全局变量),40个品种就写40条记录,然后在下一根K线开始统计数据库中开仓品种的数量,从而实现对符合条件的品种增加或减少仓位,而金子塔不支持写入数据库和读取数据库数据的功能,但可用全局变量来解决?问一下用啥全局变量或数据库方式解决?
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-3-25 16:14 | 显示全部楼层
可以使用EXTGBDATA()和EXTGBDATASET()全局变量进行读取和记录
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

61

主题

197

帖子

197

积分

等级: 免费版

注册:
2021-9-28
曾用名:
 楼主| 发表于 2022-3-25 16:25 | 显示全部楼层
设置单值全局变量。
运行方式:EXTGBDATASET仅在最后一根K线起作用,无法做迭代运算

用法:
EXTGBDATASET(S,X)
S为该数据的字符串名称,如果名称与先前的重复,那么系统将用新的数据替换它。X为数据。
全局单值数据可以理解为与品种和市场无关的单值数据,
主要用在公式中变量的保存,用户可以在扩展数据管理里管理它们。

上述说明是只能在最后1根K线有效,但我做回测是每天开盘计算一下是否开仓以及开仓份数,该全局变量如何解决? 另外 ,context变量是否一样可行?
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-3-25 16:33 | 显示全部楼层
该函数只记录最新值,不支持回测。全局变量,普通变量无法记录到整个金字塔中的值的,只有这种EXT超全局变量才可以,一般的都只能作用于单策略单品种中。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

61

主题

197

帖子

197

积分

等级: 免费版

注册:
2021-9-28
曾用名:
 楼主| 发表于 2022-3-25 17:06 | 显示全部楼层
我的问题还是不能解决?我要的是 每天开盘计算 500只股票中 符合开仓条件的股票,如果只有5只开仓,在总资金(每只股票等分10万,累加:500*10万),则我需要把其余没开仓的资金全部等分到这符合开仓条件的5只上去,这个在MC的全局变量 或TB的数据库都能简单解决,金字塔 如果用外部全局变量是可以统计的,但不知道是否只能在最后1根K线统计,如果这样就没法做回测,只有每个日K线都能统计才能解决问题
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2022-3-25 17:10 | 显示全部楼层
你回测难道历史每一天都自己配一个数据库里面设置好手数?
类似股票这种需求我建议直接用python就行了,这类操作你熟悉的话都自己写
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

61

主题

197

帖子

197

积分

等级: 免费版

注册:
2021-9-28
曾用名:
 楼主| 发表于 2022-3-25 17:35 | 显示全部楼层
你说的是金字塔python? 还是jupter notebook?  另外,如果有全局变量的话就可以解决了,主要是股票跟期货不一样,期货放大10倍杠杆,股票1倍,因此当只有部分股票开仓是,需要计算能开仓的股票个数,然后把全部资金分配进去,这个每天都有计算一次,如果是TB 或 MC系统都有解决办法,金字塔如果支撑全局变量(不是最后一根k用的,而是从头到尾都可以使用的)就行了,因此问能否支持?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-7-16 05:50 , Processed in 0.092573 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表