金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 胖虎爱吃鱼

虚拟持仓问题

[复制链接]

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-17 10:33 | 显示全部楼层
技术010 发表于 2023-5-17 10:08
大致思路就是通过stkindiex引用各个策略的holding,然后汇总好这个品种的理论净持仓,通过理论净持仓和实际 ...

那各个策略的holding的话,就是引用逐k模式的持仓了。我想的是在序列模式下,满足开平仓条件变量等于仓位这种
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-5-17 10:34 | 显示全部楼层
那你就要试下了,从逻辑上来看,是可行的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-17 16:26 | 显示全部楼层
技术010 发表于 2023-5-17 10:34
那你就要试下了,从逻辑上来看,是可行的。

例如下面这样可以实现不
ma1:ma(c,n1);
ma2:ma(c,n2);


bkcond: c>ma1 and ma1>ma2;
skcond: c<ma1 and ma1<ma2'

spcond:=c<ma2
bpcond:=c<ma2;

lots:=max(round((10*10000/(oclose*multiplier))),1);

hold:=0;

if bkcond and ref(hold,1)=0 then BEGIN
        hold:=lots;
end

if skcond and ref(hold,1)=0 then BEGIN
        hold:=-lots;
END

if spcond and ref(hold,1)=lots then BEGIN
        hold:=0;
EMA

if bpcond and ref(hold,1)=-lots then BEGIN
        hold:=0;
EMA
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-5-17 16:47 | 显示全部楼层
应该可以的,你引用HOLD的值就可以,可以在K线图上输出看下的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-18 10:58 | 显示全部楼层
技术010 发表于 2023-5-17 16:47
应该可以的,你引用HOLD的值就可以,可以在K线图上输出看下的。

输出结果就是hold一直为lots
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-5-18 12:32 | 显示全部楼层
那加载到图上,看hold的值是多少呢。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-18 15:30 | 显示全部楼层
技术010 发表于 2023-5-18 12:32
那加载到图上,看hold的值是多少呢。

输出的结果都是0了现在
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-5-18 15:51 | 显示全部楼层
你的这段代码结构还是需要使用逐K模式的,这个和序列和逐K的运算机制有关系。序列模式一般只关注当前最新K的情况,如果你用在图表上,那就需要每根历史K上的值,就需要使用逐K模式了。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-18 16:17 | 显示全部楼层
技术010 发表于 2023-5-18 15:51
你的这段代码结构还是需要使用逐K模式的,这个和序列和逐K的运算机制有关系。序列模式一般只关注当前最新K ...

有什么好的思路改变下
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-5-18 16:26 | 显示全部楼层
这个没有比较好的思路,因为你的代码中涉及到if判断,所以你的需求能用序列模式实现不了。现在逐K+仅刷最后一根的运行模式的效率已经提升了很多了,没必要为了效率,一定要使用序列模式的。一般后台程序中才用序列模式,因为后台只关注当前最新K的情况。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-23 01:10 , Processed in 0.118000 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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