金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 792|回复: 13

统计亏损笔数问题

[复制链接]

15

主题

136

帖子

136

积分

Rank: 2

等级: 标准版

注册:
2021-12-10
曾用名:
发表于 2024-8-5 15:09 | 显示全部楼层 |阅读模式
我想统计从最近一次发生亏损幅度大于1%,累积到现在的亏损的笔数,直到 盈利之后i,才停止统计,
如果再次发生亏损,则开始统计 ,依次轮番循环下去,取得确定的亏损笔数

如:发生一笔亏损1%之后,第二笔也是亏损,记为2,第三笔记为3、、、、、 这样直到  盈利之后,统计为0, 请教老师帮忙构建一个思路,运行效率高一些的,谢谢了
回复

使用道具 举报

31

主题

7767

帖子

7777

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-8-5 15:40 | 显示全部楼层

variable:n=0;
if NUMPROFITPER(1)<-1/100 and n=0 and 全部平仓条件 then
begin
        n:=n+1;
END

if n>0 and NUMPROFITPER(1)<0 and n>0 and 全部平仓条件 then
begin
        n:=n+1;
end

if n>0 and NUMPROFITPER(1)>0  and 全部平仓条件 then
begin
        n:=0;
end


每次平仓时候坐下统计,对n进行赋值
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

15

主题

136

帖子

136

积分

Rank: 2

等级: 标准版

注册:
2021-12-10
曾用名:
 楼主| 发表于 2024-8-10 14:54 | 显示全部楼层
技术008 发表于 2024-8-5 15:40
variable:n=0;
if NUMPROFITPER(1)0 and NUMPROFITPER(1)0 and 全部平仓条件 then
begin

这个有个不好的地方,就是不能盘前判断,比如

                Diff : ema( close,12 )-ema( close,26 ) ;

                Dea  : ema( diff,9 ) ;

                Macd : 2*( diff-dea ), colorstick;

if holding = 0 and ref( corss( diff,dea ),1 ) then buy ( 1,1,limitr,open + 1 * mindiff ),ignorecheckprice ;

if holding > 0 and ref( corss( dea,diff ),1 ) then sell( holding > 0,holding,limitr, open - 1 * mindiff ),ignorecheckprice ;

止损为  

              fixstop := if( holding > 0,intpart( enterprice-enterprice * 1.1/100 ),drawnull ) ;

            if low < fixstop then  sell( holding > 0,holding,limitr, min( open - 1 * mindiff,fixstop - 1 * mindiff ) ),ignorecheckprice ;  
         
现在我就想在 开仓之前,加入一个限定条件,统计 前面100个周期内,打止损 的笔数,

    fg := count( low < fixstop,100 ) ;   

这样是可以统计到 前面 100 根K 的止损数了,但是不能把  fg 放到开仓之前来判断,

现在就想咨询一下老师看看,怎么能够在开仓之前知道 前面打了几次止损,连亏了几次,劳烦老师帮忙修改一下
回复

使用道具 举报

15

主题

136

帖子

136

积分

Rank: 2

等级: 标准版

注册:
2021-12-10
曾用名:
 楼主| 发表于 2024-8-10 16:16 | 显示全部楼层
技术008 发表于 2024-8-5 15:40
variable:n=0;
if NUMPROFITPER(1)0 and NUMPROFITPER(1)0 and 全部平仓条件 then
begin

也就是统计两个,一个是 前面100 根K 中亏损的次数, 另外一个是,前面100根K中出现连亏的总笔数
回复

使用道具 举报

31

主题

7767

帖子

7777

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-8-12 09:18 | 显示全部楼层
没理解可以盘前用的啊,这里其实主要一个矛盾在于止损只有开仓后平仓后才有。
所以一开始的开仓要考虑不使用止损
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

15

主题

136

帖子

136

积分

Rank: 2

等级: 标准版

注册:
2021-12-10
曾用名:
 楼主| 发表于 2024-8-12 11:04 | 显示全部楼层
技术008 发表于 2024-8-12 09:18
没理解可以盘前用的啊,这里其实主要一个矛盾在于止损只有开仓后平仓后才有。
所以一开始的开仓要考虑不使 ...

问题就是出在这里啊,我是想下一笔开盘前做判断的,
回复

使用道具 举报

31

主题

7767

帖子

7777

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-8-12 11:07 | 显示全部楼层
cond:all(n=0,barpos);

if cond and 开仓条件 then
begin
这里正常开仓条件
end

if n>0 and 开仓条件 then
begin
根据亏损次数n进行的开仓
end
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

31

主题

7767

帖子

7777

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-8-12 11:08 | 显示全部楼层
这样分成两部分,如果之前n一直是0,说明没进行过亏损统计,那就正常开仓不使用n

后面的开仓条件就按照n亏损次数进行
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

15

主题

136

帖子

136

积分

Rank: 2

等级: 标准版

注册:
2021-12-10
曾用名:
 楼主| 发表于 2024-8-19 22:50 | 显示全部楼层
技术008 发表于 2024-8-12 11:08
这样分成两部分,如果之前n一直是0,说明没进行过亏损统计,那就正常开仓不使用n

后面的开仓条件就按照n ...

另外,我想求上一笔交易的持仓周期,怎么可以求得
回复

使用道具 举报

15

主题

136

帖子

136

积分

Rank: 2

等级: 标准版

注册:
2021-12-10
曾用名:
 楼主| 发表于 2024-8-19 23:55 | 显示全部楼层
就是要求每次开仓之前,获得上一笔交易持仓的周期,持仓多少根K线,下一笔交易的时候,参考上一笔持仓周期
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-24 09:22 , Processed in 0.222515 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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