金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2130|回复: 11

ASSET

[复制链接]

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
发表于 2024-7-21 12:30 | 显示全部楼层 |阅读模式
老师帮我记录下盈亏
zyk:=VALUEWHEN(TODAYBAR=1,ASSET);
yk:ASSET-zyk;

每天记录盈亏,如果收盘小于0,就进行累加,如果收盘累加大于0,就重置为0,只要是亏损的,就一直加到盈利才重置
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-7-22 08:55 | 显示全部楼层
variable:n=0;

if time=150000 and yk>0 then n:=0;
if time=150000 and yk<0 then n:=n+yk;
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2024-7-22 18:57 | 显示全部楼层
技术008 发表于 2024-7-22 08:55
variable:n=0;

if time=150000 and yk>0 then n:=0;

你这个不对,可能是我描述的不对,没那么简单,换个说法,记录每次的平仓盈亏,可以是全平一次算一次那个函数。每次的平仓盈亏相加,(不被日内限制),如果平仓的时候,相加为正,就重置为0,如果相加为负,就进行累加,一直到为正,重置为0.

补充内容 (2024-7-22 18:59):
不是只加亏损的,正负相加,直到为正就重置
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2024-7-22 19:13 | 显示全部楼层
100020061 发表于 2024-7-22 18:57
你这个不对,可能是我描述的不对,没那么简单,换个说法,记录每次的平仓盈亏,可以是全平一次算一次那个 ...


                                        上次盈亏:INTPART(NUMPROFIT(1)),NODRAW;
                                        单手浮盈:INTPART(OPENPROFIT/abs(holding)) ,NODRAW;
                                        variable:累加亏损:=0;
                                        if 累加亏损>0 then 累加亏损:=0;
                                        if 累加亏损=0 and 上次盈亏<0 then 累加亏损:=上次盈亏;
                                        if TOTALTRADE>ref(TOTALTRADE,1)and 累加亏损<>0 then 累加亏损:=累加亏损+上次盈亏;
大概这样,看看有错就指正下
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-7-23 09:02 | 显示全部楼层
不是很难看懂,光看代码很难看出逻辑上错误的
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2024-7-23 09:54 | 显示全部楼层
技术008 发表于 2024-7-23 09:02
不是很难看懂,光看代码很难看出逻辑上错误的

就是历史的全部平仓盈亏相加,相加的和为正,就重置为0,未负就一直累加,加到正为止,你帮我写个看看要怎么样写? 上面单手浮盈:INTPART(OPENPROFIT/abs(holding)) ,NODRAW;这个没有用,其他地方的
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-7-23 09:57 | 显示全部楼层
variable:n=0;
if 平仓条件 then
begin
        sell();
        if numprofit(1)+n>0 then n:=0;
        if numprofit(1)+n<0 then n:=numprofit(1)+n;
end

这样自己记录,这里sell必须是全部平仓时候再去统计本次平仓的平仓盈亏
这类自己统计比较复杂,需要客户想办法自行完成了
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2024-7-23 10:12 | 显示全部楼层
技术008 发表于 2024-7-23 09:57
variable:n=0;
if 平仓条件 then
begin

不放在平仓条件里面不行?交易一次算一次好像也可以啊
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-7-23 10:16 | 显示全部楼层
平仓盈亏是全部平仓才计算的,中间减仓不算

不放平仓条件里面不好计算啊,没办法统计10次的
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2024-7-23 10:24 | 显示全部楼层
技术008 发表于 2024-7-23 10:16
平仓盈亏是全部平仓才计算的,中间减仓不算

不放平仓条件里面不好计算啊,没办法统计10次的

TOTALTRADE>ref(TOTALTRADE,1) 这个函数也是交易一次算一次啊,就是取平仓后的结果,你用这个函数试试?
多个开平仓条件,你那个也不好处理
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-23 20:08 , Processed in 0.081647 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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