金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
123
返回列表 发新帖
楼主: 钟铨~Eire

求编写两个策略(图表程式化,实盘交易)

[复制链接]

2

主题

580

帖子

621

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-10
曾用名:
发表于 2021-6-18 21:51 | 显示全部楼层
删掉你不需要的条件,然后把代码贴出来,给我们确认修改后的结果。
回复

使用道具 举报

3

主题

42

帖子

42

积分

Rank: 1

等级: 新手上路

注册:
2021-6-8
曾用名:
 楼主| 发表于 2021-6-18 22:34 | 显示全部楼层
admin 发表于 2021-6-18 21:51
删掉你需要的条件,然后把代码贴出来,给我们确认修改后的结果。

删掉条件?把我搞蒙了

我用了九牛二虎之力完成了以下的语句,请问以下语句有无问题呢,非常感谢!!

cond1:min(open,close)>ma(close,20);
cond2:max(open,close)<ma(close,20);
if ref(cond1,1) and o>ma(close,20) and holding<=0 then
begin
        sellshort(1,0,marketr);
if ref(cond1,1) and o>ma(close,60) then
begin
        buy(1,25%,market),PERTRADER;
END

if ref(cond2,1) and o<ma(close,20) and holding>=0 then
begin
        sell(1,0,marketr);
if ref(cond2,1) and o<ma(close,60) then
begin
        buyshort(1,25%,market),PERTRADER;
END
回复

使用道具 举报

2

主题

580

帖子

621

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-10
曾用名:
发表于 2021-6-19 06:06 | 显示全部楼层
[PEL] 复制代码
cond1:min(open,close)>ma(close,20);
cond2:max(open,close)<ma(close,20);
if ref(cond1,1) and o>ma(close,20) and holding<=0 then
begin
        sellshort(1,0,marketr);
        buy(c>ma(c,60) ,25%,market),PERTRADER;//开仓除满足if条件外,还需满足c>ma(c,60)
END

if ref(cond2,1) and o<ma(close,20) and holding>=0  then
begin
        sell(1,0,marketr);
        buyshort(c<ma(c,60),25%,market),PERTRADER;//开仓除满足if条件外,还需满足c<ma(c,60)
END



建议您多阅读代码,这种基本的修改。并没有难度
回复

使用道具 举报

3

主题

42

帖子

42

积分

Rank: 1

等级: 新手上路

注册:
2021-6-8
曾用名:
 楼主| 发表于 2021-6-19 08:11 | 显示全部楼层
admin 发表于 2021-6-19 06:06
[mw_shl_code=pel,true]cond1:min(open,close)>ma(close,20);
cond2:max(open,close)ma(close,20) and hol ...

好的好的,非常谢谢,我一定会多阅读,谢谢老师
回复

使用道具 举报

3

主题

42

帖子

42

积分

Rank: 1

等级: 新手上路

注册:
2021-6-8
曾用名:
 楼主| 发表于 2021-6-21 10:49 | 显示全部楼层
admin 发表于 2021-6-19 06:06
[mw_shl_code=pel,true]cond1:min(open,close)>ma(close,20);
cond2:max(open,close)ma(close,20) and hol ...

截图202106211048169091..png

老师,您好,这个语句在测试中弹出提示,如何调整?
回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-6-21 11:27 | 显示全部楼层
你把代码贴上来我看下。这个报错信息的位置未必准确。你贴代码我看下就知道了
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

3

主题

42

帖子

42

积分

Rank: 1

等级: 新手上路

注册:
2021-6-8
曾用名:
 楼主| 发表于 2021-6-21 11:37 | 显示全部楼层
技术009 发表于 2021-6-21 11:27
你把代码贴上来我看下。这个报错信息的位置未必准确。你贴代码我看下就知道了

cond1:min(open,close)>ma(close,20);
cond2:max(open,close)<ma(close,20);
if ref(cond1,1) and o>ma(close,20) and holding<=0 then
begin
        sellshort(1,0,marketr);
        buy(c>ma(c,60) ,25%,market),PERTRADER;//开仓除满足if条件外,还需满足c>ma(c,60)
END

if ref(cond2,1) and o<ma(close,20) and holding>=0  then
begin
        sell(1,0,marketr);
        buyshort(c<ma(c,60),25%,market),PERTRADER;//开仓除满足if条件外,还需满足c<ma(c,60)
END
回复

使用道具 举报

34

主题

9187

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2021-6-21 13:32 | 显示全部楼层
ma函数返回序列变量,不能放在IF判断语句体内。修改方式如下。另一只自行修改
ma60:ma(c,60);
if ref(cond1,1) and o>ma(close,20) and holding<=0 then
begin
        sellshort(1,0,marketr);
        buy(c>ma60 ,25%,market),PERTRADER;//开仓除满足if条件外,还需满足c>ma(c,60)
END
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-6-21 13:35 | 显示全部楼层
[PEL] 复制代码
cond1:min(open,close)>ma(close,20);
cond2:max(open,close)<ma(close,20);
ma60:ma(c,60);
if ref(cond1,1) and o>ma(close,20) and holding<=0 then
begin
sellshort(1,0,marketr);
buy(c>ma60,25%,market),PERTRADER;
END

if ref(cond2,1) and o<ma(close,20) and holding>=0  then
begin
sell(1,0,marketr);
buyshort(c<ma60,25%,market),PERTRADER;//开仓除满足if条件外,还需满足c<ma(c,60)
END

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-22 18:24 , Processed in 0.202208 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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