欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 判断当前价格是否大于前面n根k线最高价

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有4185人关注过本帖树形打印复制链接

主题:判断当前价格是否大于前面n根k线最高价

帅哥哟,离线,有人找我吗?
FireScript
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/9/23 8:48:29    Post IP:58.246.57.26[显示全部帖子]

150h:VALUEWHEN(h>ref(hhv(h,150),1),h);
150l:VALUEWHEN(l<ref(llv(l,150),1),l);

这样取值。用VALUEWHEN函数。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/9/23 15:02:17    Post IP:58.246.57.26[显示全部帖子]

 看这个图的意思 你这个开仓条件是 跌破前面记录的最高价开仓?平仓条件是突破前面记录的最低价?


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/9/24 10:01:47    Post IP:58.246.57.26[显示全部帖子]

 VARIABLE:xl:=0;//记录满足 h>ref(hhv(h,N),1)的k的最低价
INPUT:N(50,1,300,1);//参数自行定义,150周期信号太少,这里默认设成50

if h>ref(hhv(h,N),1) and  xl=0 and holding=0 and BARPOS>N then //重置全局变量的值,只在没有持仓的情况下操作。
begin
xl:=l;
end

showL:xl,NODRAW;//显示下记录的值。平仓为0,直到再次满足条件才会有值

if c>=ENTERPRICE+20*MINDIFF and holding>0 then //当前价格大于开仓价20个点 平仓。  
begin
sell(1,1,market);
xl:=0;//平仓时把记录的值重置为0
end

if cross(xl,c) and holding=0 and xl<>0 then //当前价格跌破前面记录的最低价,也就是xl的值
begin
buy(holding=0,1,market);
end

不完全理解你的思路,所以仅供参考。你自己根据这个大致理下自己的思路。

思路:以全局变量记录下满足 h>ref(hhv(h,N),1) 条件时候的最低价。后续开仓以跌破这个价格作为开仓条件。 持仓期间不更新这个全局变量的值。平仓后,如果有再次满足条件的K,重新更新全局变量的值。

注意:首次记录下L之后,只要没开仓,这个值还是会更新的,只要有新高出现。
[此贴子已经被作者于2020/9/24 10:02:53编辑过]


命数如织,当如磐石。
 回到顶部