金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: zqs

怎么统计亏损持仓品种数量

[复制链接]

40

主题

94

帖子

94

积分

等级: 免费版

注册:
2022-5-23
曾用名:
 楼主| 发表于 2022-9-8 11:26 | 显示全部楼层
//每次轮询前先计算现有持仓盈利小于0
chicangnum:=THOLDCOUNT('');  //取得当前活动账户的总持仓品种数量
TEMP_STR:='';//保存品种代码集合
J:=0;
//循环取得持仓
FOR I = 1 TO chicangnum do
BEGIN
//获取第I个序号的账户持仓品种代码
HLABEL:= THOLDINDEXLABEL(I,'');
//判断当前代码集合中是否已经存在,不存在则进行统计。存在则不进入统计
if STRFIND(TEMP_STR,','&HLABEL,1)=0 then begin
     TEMP_STR:=STRCAT(TEMP_STR,','&HLABEL);  //将不在代码集合中的品种添加到代码集合中。
        //计算该品种盈亏
        if TBUYHOLDINGEX('',HLABEL,1)>0 and (C-TAVGENTERPRICEEX2('',HLABEL,0))<0 then begin
                J:=J+1;
                DEBUGFILE('E:\FEIDAOTEST.TXT',stklabel+'多单盈利幅度:%.3f',(C-TAVGENTERPRICEEX2('',HLABEL,0))/TAVGENTERPRICEEX2('',HLABEL,0)*100);
                END
       
        if TSELLHOLDINGEX('',HLABEL,1)>0 and (TAVGENTERPRICEEX2('',HLABEL,1)-C)<0 then begin
                J:=J+1;
                DEBUGFILE('E:\FEIDAOTEST.TXT',stklabel+'空单盈利幅度:%.3f',(TAVGENTERPRICEEX2('',HLABEL,1)-C)/TAVGENTERPRICEEX2('',HLABEL,1)*100);
                END
        END
END
lossnum:=J;
DEBUGFILE('E:\FEIDAOTEST.TXT',stklabel+'没利润保护品种数量:%.0f',lossnum);
回复

使用道具 举报

40

主题

94

帖子

94

积分

等级: 免费版

注册:
2022-5-23
曾用名:
 楼主| 发表于 2022-9-8 11:29 | 显示全部楼层
上面是按你提供的代码写的,测试的结果没达到想要的目的,而且debug出来的结果看不懂,每个品种循环的次数不一样,返回不同的J值,这是上面原因?
2022-09-08 11:16:27.573    AX00多单盈利幅度:-44.713
2022-09-08 11:16:27.573    AX00多单盈利幅度:-34.708
2022-09-08 11:16:27.574    AX00多单盈利幅度:-61.689
2022-09-08 11:16:27.574    AX00多单盈利幅度:-14.789
2022-09-08 11:16:27.575    AX00多单盈利幅度:-75.228
2022-09-08 11:16:27.575    AX00多单盈利幅度:-26.952
2022-09-08 11:16:27.576    AX00没利润保护品种数量:6
2022-09-08 11:16:27.581    B00多单盈利幅度:-50.537
2022-09-08 11:16:27.582    B00多单盈利幅度:-41.586
2022-09-08 11:16:27.582    B00多单盈利幅度:-8.745
2022-09-08 11:16:27.583    B00多单盈利幅度:-65.725
2022-09-08 11:16:27.583    B00多单盈利幅度:-23.765
2022-09-08 11:16:27.584    B00多单盈利幅度:-77.837
2022-09-08 11:16:27.584    B00多单盈利幅度:-34.648
2022-09-08 11:16:27.585    B00没利润保护品种数量:7
2022-09-08 11:16:27.593    C00多单盈利幅度:-73.220
2022-09-08 11:16:27.594    C00多单盈利幅度:-68.374
2022-09-08 11:16:27.594    C00多单盈利幅度:-34.851
2022-09-08 11:16:27.595    C00多单盈利幅度:-50.593
2022-09-08 11:16:27.595    C00多单盈利幅度:-81.443
2022-09-08 11:16:27.596    C00多单盈利幅度:-58.725
2022-09-08 11:16:27.596    C00多单盈利幅度:-88.001
2022-09-08 11:16:27.597    C00多单盈利幅度:-64.617
2022-09-08 11:16:27.597    C00没利润保护品种数量:8
2022-09-08 11:16:27.606    CS00多单盈利幅度:-71.004
2022-09-08 11:16:27.606    CS00多单盈利幅度:-65.756
2022-09-08 11:16:27.607    CS00多单盈利幅度:-29.458
2022-09-08 11:16:27.607    CS00多单盈利幅度:-46.504
2022-09-08 11:16:27.608    CS00多单盈利幅度:-79.907
2022-09-08 11:16:27.608    CS00多单盈利幅度:-55.309
2022-09-08 11:16:27.609    CS00多单盈利幅度:-87.008
2022-09-08 11:16:27.609    CS00多单盈利幅度:-61.689
2022-09-08 11:16:27.610    CS00没利润保护品种数量:8
2022-09-08 11:16:27.616    EB00多单盈利幅度:-16.273
2022-09-08 11:16:27.617    EB00多单盈利幅度:-1.122
2022-09-08 11:16:27.618    EB00多单盈利幅度:-41.981
2022-09-08 11:16:27.619    EB00多单盈利幅度:-62.485
2022-09-08 11:16:27.619    EB00没利润保护品种数量:4
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-9-8 11:54 | 显示全部楼层
截图202209081154162398.png

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

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-9-8 11:59 | 显示全部楼层
你账户栏什么情况截图看下。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

40

主题

94

帖子

94

积分

等级: 免费版

注册:
2022-5-23
曾用名:
 楼主| 发表于 2022-9-8 12:23 | 显示全部楼层
你测试能准确统计吗? 我持仓的截图如下:
截图202209081223193129.png
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-9-8 12:29 | 显示全部楼层
你指标模式是序列还是逐K?前面给的代码 其实直接加载在图表上,在最后一个K上就能正常进行输出的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

40

主题

94

帖子

94

积分

等级: 免费版

注册:
2022-5-23
曾用名:
 楼主| 发表于 2022-9-8 13:30 | 显示全部楼层
我是后台交易,在序列模式下。只能在逐K模式+仅刷最后一根K线吗? 序列模式下有没有办法实现这个功能
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-9-8 13:58 | 显示全部楼层
用序列会有问题的。

你可以单独设置一个预警 计算这个,然后结果写到全局变量里,其他程序直接读超全局变量。这个指标没必要每个品种下都算一次的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

40

主题

94

帖子

94

积分

等级: 免费版

注册:
2022-5-23
曾用名:
 楼主| 发表于 2022-9-8 14:25 | 显示全部楼层
可以帮忙写一下吗?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-9-8 14:37 | 显示全部楼层
EXTGBDATASET()//写值

EXTGBDATA()//读值

就这么2个函数,没什么特殊的。在上面计算的代码里 使用写值的函数。其他地方用就按照设置的字段名称 去读值就行了。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-8 08:21 , Processed in 0.163552 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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