金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 4457|回复: 16

请教帮忙写个日线和小时线的策略

[复制链接]

9

主题

45

帖子

45

积分

Rank: 1

等级: 新手上路

注册:
2023-9-4
曾用名:
发表于 2023-10-24 14:47 | 显示全部楼层 |阅读模式
策略开多条件:日线:MACD大于零并且收盘价大于MA20后转到一小时K线,KDJ的J值小于25之后的阳线,阳k的MA40向上,在大于阳K最高价加一个最小变动单位开多。止损条件:价格触及到P-1.35ATR(P是开多的价格,阳k的ATR)市价止损或者收盘价小于MA40,收盘价止损。
麻烦各位老师帮忙写下,主要没写过日线转换小时线的写法不知道怎么写。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-10-24 14:50 | 显示全部楼层
“MACD大于零并且收盘价大于MA20后转到一小时K线”

直接运行周期选择小时K。跨周期调用下 日线上 ““MACD大于零并且收盘价大于MA20” 这个的判断结果就了,可以把这个单独写成一个指标,然后在小时K上调用下判断结果。

参考跨周期调用的函数:https://www.weistock.com/docs/PE ... 91%A8%E6%9C%9F.html

除了跨周期之外,其他部分就是简单的指标编写了。你可以自行尝试完善下。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

9

主题

45

帖子

45

积分

Rank: 1

等级: 新手上路

注册:
2023-9-4
曾用名:
 楼主| 发表于 2023-10-24 16:43 | 显示全部楼层
技术009 发表于 2023-10-24 14:50
“MACD大于零并且收盘价大于MA20后转到一小时K线”

直接运行周期选择小时K。跨周期调用下 日线上 ““M ...

好的,我研究下,谢谢
回复

使用道具 举报

9

主题

45

帖子

45

积分

Rank: 1

等级: 新手上路

注册:
2023-9-4
曾用名:
 楼主| 发表于 2023-10-25 15:33 | 显示全部楼层
技术009 发表于 2023-10-24 14:50
“MACD大于零并且收盘价大于MA20后转到一小时K线”

直接运行周期选择小时K。跨周期调用下 日线上 ““M ...

测了下理论上每天的所有小时应该都同个值,但是有的返回1有的0。是这个引用代码写的有问题吗?
[PEL] 复制代码
//日线指标HourCon
MA20:MA(CLOSE,20),COLORMAGENTA;                //20日移动平均线

//短期、长期指数平滑移动平均线间的差
DIFF: EMA(CLOSE,18) - EMA(CLOSE,39);

//DIFF的13日指数平滑移动平均线
DEA:= EMA(DIFF,13);

//使用COLORSTICK函数的作用是将指标线转换为柱状线显示。
MACD : 2*(DIFF-DEA),COLORSTICK;

KD :MACD>0 AND CLOSE>MA20;//开多条件

//小时策略
LONG:"HourCon.KD#DYA";


补充内容 (2023-10-25 15:35):
单词写错了,应该是DAY.
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2023-10-25 15:45 | 显示全部楼层
你到的应该是当天的吧?如果只有当天是这种现象,你可以重刷以下数据看下,是因为你策略采用的仅刷最后一根k,这种不会回刷历史,采用记内存模式。所以小时k结束时会记录当前日线的值。

可以在策略编辑界面中取消勾选【仅刷最后一根k】

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

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-10-25 15:47 | 显示全部楼层
对,小引大情况下。小周期应该都在日线覆盖范围下,所以值应该是一样的。

但是指标运行中有一个内存保留的机制,会保存K结束时候的实时数值结果。有可能是你看到的是内存保留的,其实就是日线盘中可能结果在1 和0 之间变化,在小时周期的调用上,这个过程被保存在内存中了。  一般你刷新下,这个内存结果就重置了。

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

使用道具 举报

9

主题

45

帖子

45

积分

Rank: 1

等级: 新手上路

注册:
2023-9-4
曾用名:
 楼主| 发表于 2023-10-25 16:05 | 显示全部楼层
技术009 发表于 2023-10-25 15:47
对,小引大情况下。小周期应该都在日线覆盖范围下,所以值应该是一样的。

但是指标运行中有一个内存保留 ...

我看的是历史数据的,好像也不太对。我换了一种方式在小时周期里引用MACD和MA20然后再判断,这样得出来的结果是比较符合预期的,不知道这种方式和直接引用大周期的判断结果哪个会准确点呢
[PEL] 复制代码
MA20_D:stkindi('','HourCon.MA20',0,6);

MACD_D:stkindi('','HourCon.MACD',0,6;

LONG :MACD_D>0 AND CALLSTOCK('',VTCLOSE,6,0)>MA20_D;
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-10-25 16:07 | 显示全部楼层
你调用的代码不会也写在HourCon指标下吧。

你前面那个写法没问题,一直都是这样用的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2023-10-25 16:10 | 显示全部楼层
没有区别。前者最起码效率还高一些,这里进行多次引用的操作效率会稍微低一些。


非今天以外的历史数据,都只会对应自己当时的日线值。如果不是建议你截图看下。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

9

主题

45

帖子

45

积分

Rank: 1

等级: 新手上路

注册:
2023-9-4
曾用名:
 楼主| 发表于 2023-10-25 16:11 | 显示全部楼层
技术009 发表于 2023-10-25 16:07
你调用的代码不会也写在HourCon指标下吧。

你前面那个写法没问题,一直都是这样用的。

“你调用的代码不会也写在HourCon指标下吧。”没有,分开的。没问题可我看结果小时周期和日线周期的数据不一致。用了我后面写的那种方式就一致

补充内容 (2023-10-25 16:19):
又可以了,这。。不知道啥问题。也没改啥
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-1 07:33 , Processed in 0.090658 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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