金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 3153|回复: 13

大神把这个给改下

[复制链接]

26

主题

117

帖子

117

积分

等级: 免费版

注册:
2023-11-16
曾用名:
发表于 2024-1-5 10:19 | 显示全部楼层 |阅读模式
改成用昨天的最高价和最低价,其他不变


//准备中间变量
INPUT : HLD(20,1,1000,1);//获利
INPUT : ZSD(10,1,1000,1);//止损
INPUT : QDYD(15,1,1000,1);//移动保护启动点
INPUT : YD(7,1,1000,1);//移动保护
INPUT:SS(1,1,10000,1),NMIN1(30,1,1000,1),NMIN2(10,1,100,1),N1(0,0,100,1);
TT:=IF(HOLDING<>0,OPENBAR,10);
HHH:=REF(HHV(H,TT+1),1);
LLL:=REF(LLV(L,TT+1),1);
N:=BARSLAST(DATE<>REF(DATE,1))+1;
开盘30分钟最高价:=VALUEWHEN(TIME<=090000+NMIN1*50,HHV(H,N));
开盘30分钟最低价:=VALUEWHEN(TIME<=090000+NMIN1*50,LLV(L,N));
手数:=SS;
上轨:开盘30分钟最高价+N1*MINDIFF;
下轨:开盘30分钟最低价-N1*MINDIFF;
//条件
开多条件:=C>上轨;
开空条件:=C<下轨;
//交易系统
IF TIME>090000+NMIN1*50 AND TIME<145500-10*100 THEN BEGIN
开多:BUY(开多条件 AND HOLDING=0,手数,MARKET);
开空:BUYSHORT(开空条件 AND HOLDING=0,手数,MARKET);
END
IF HOLDING >0 THEN BEGIN//多单止盈
        BCCJ:=MAX(AVGENTERPRICE+HLD*MINDIFF,OPEN);
        SELL(H>=AVGENTERPRICE+HLD*MINDIFF,HOLDING,LIMITR, BCCJ);
        END
IF HOLDING >0 THEN BEGIN//多单止损
        BCCJ1:=MIN(AVGENTERPRICE-ZSD*MINDIFF,OPEN);
        SELL(L<=AVGENTERPRICE-ZSD*MINDIFF,HOLDING,LIMITR, BCCJ1);
        END
IF HOLDING >0 AND HHH>=AVGENTERPRICE+MINDIFF*QDYD AND ENTERBARS>0 THEN BEGIN//多单止损
        BCCJ2:=MIN(AVGENTERPRICE+YD*MINDIFF,OPEN);
        SELL(L<=AVGENTERPRICE+YD*MINDIFF,HOLDING,LIMITR, BCCJ2);
        END

/////////////////       
IF HOLDING <0 THEN BEGIN//空单止盈
        SCCJ:=MIN(AVGENTERPRICE-HLD*MINDIFF,OPEN);
        SELLSHORT(L<=AVGENTERPRICE-HLD*MINDIFF,HOLDING,LIMITR,SCCJ);
        END       
IF HOLDING <0 THEN BEGIN//空单止损
        SCCJ1:=MAX(AVGENTERPRICE+ZSD*MINDIFF,OPEN);
        SELLSHORT(H>=AVGENTERPRICE+ZSD*MINDIFF,HOLDING,LIMITR,SCCJ1);
        END       
IF HOLDING <0 AND LLL<=AVGENTERPRICE-MINDIFF*QDYD AND ENTERBARS>0 THEN BEGIN//空单止损
        SCCJ2:=MAX(AVGENTERPRICE-YD*MINDIFF,OPEN);
        SELLSHORT(H>=AVGENTERPRICE-YD*MINDIFF,HOLDING,LIMITR,SCCJ2);
        END                       

//平仓
IF TIME>=149000-NMIN2*100 THEN BEGIN
收盘平多:SELL(1,手数,MARKET);
收盘平空:SELLSHORT(1,手数,MARKET);
END




补充内容 (2024-1-5 10:21):
用昨日的最高最低,在今日的1分钟图标交易
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-1-5 10:24 | 显示全部楼层
CALLSTOCK('',vtHIGH,6,-1);  昨日最高价
CALLSTOCK('',vtLOW,6,-1); 昨日最低价

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

使用道具 举报

26

主题

117

帖子

117

积分

等级: 免费版

注册:
2023-11-16
曾用名:
 楼主| 发表于 2024-1-5 10:40 | 显示全部楼层
技术009 发表于 2024-1-5 10:24
CALLSTOCK('',vtHIGH,6,-1);  昨日最高价
CALLSTOCK('',vtLOW,6,-1); 昨日最低价

N:=BARSLAST(DATE<>REF(DATE,1))+1;
这句怎么改
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-1-5 11:01 | 显示全部楼层
西安斯尔德 发表于 2024-1-5 10:40
N:=BARSLAST(DATEREF(DATE,1))+1;
这句怎么改

这句不用改。就是判断当天开盘以来的数据量。或者换成
n:=TODAYBARS
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

26

主题

117

帖子

117

积分

等级: 免费版

注册:
2023-11-16
曾用名:
 楼主| 发表于 2024-1-5 11:11 | 显示全部楼层
技术006 发表于 2024-1-5 11:01
这句不用改。就是判断当天开盘以来的数据量。或者换成
n:=TODAYBARS

图表里没有交易信号了

补充内容 (2024-1-5 11:11):

//准备中间变量
INPUT : HLD(20,1,1000,1);//获利
INPUT : ZSD(10,1,1000,1);//止损
INPUT : QDYD(15,1,1000,1);//移动保护启动点
INPUT : YD(7,1,1000,1);//移动保护
INPUT:SS(1,1,10000,1),NMIN1(30,1,1000,1),NMIN2(10,1,100,1),N1(0,0,100,1);
TT:=IF(HOLDING<>0,OPENBAR,10);
HHH:=REF(HHV(H,TT+1),1);
LLL:=REF(LLV(L,TT+1),1);
N:=BARSLAST(DATE<>REF(DATE,1))+1;
开盘30分钟最高价:=CALLSTOCK(vtHIGH,6,-1);
开盘30分钟最低价:=CALLSTOCK(vtLOW,6,-1);
手数:=SS;
上轨:开盘30分钟最高价+N1*MINDIFF;
下轨:开盘30分钟最低价-N1*MINDIFF;
//条件
开多条件:=C>上轨;
开空条件:=C<下轨;
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-1-5 11:15 | 显示全部楼层
你本地有历史日线吗?没有日线,前面的代码调用不到结果。切到日线,下拉补充下数据即可。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

26

主题

117

帖子

117

积分

等级: 免费版

注册:
2023-11-16
曾用名:
 楼主| 发表于 2024-1-5 11:19 | 显示全部楼层
技术009 发表于 2024-1-5 11:15
你本地有历史日线吗?没有日线,前面的代码调用不到结果。切到日线,下拉补充下数据即可。

还是不行,没有交易信号,你看是哪里不对
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-1-5 11:27 | 显示全部楼层
检查代码中时间控制范围和当前k线的时间差异。你代码逻辑中有按照北京时间做的时间控制,软件默认采用金字塔时区。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

26

主题

117

帖子

117

积分

等级: 免费版

注册:
2023-11-16
曾用名:
 楼主| 发表于 2024-1-5 11:33 | 显示全部楼层
技术006 发表于 2024-1-5 11:27
检查代码中时间控制范围和当前k线的时间差异。你代码逻辑中有按照北京时间做的时间控制,软件默认采用金字 ...

我用的是北京时间

补充内容 (2024-1-5 11:34):
劳烦给直接改下,我看下哪里的区别
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-1-5 12:57 | 显示全部楼层
把你修改后的代码,以及应用的品种和周期提供出来。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-3 08:57 , Processed in 0.143931 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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