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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件交易策略发布专区 → 使用金字塔PEL语言实现的SAR算法,可以加工用户特定的移动止损功能

   

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


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

主题:使用金字塔PEL语言实现的SAR算法,可以加工用户特定的移动止损功能

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


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
使用金字塔PEL语言实现的SAR算法,可以加工用户特定的移动止损功能  发帖心情 Post By:2010/10/24 16:24:47 [只看该作者]

//sar是个很有用的处理止损功能的函数,由于算法特殊,普通的软件的公式系统是无法进行描述的,这里我们将向大家展示金字塔PEL语言强大的算法描述功能,可以简单实现SAR算法功能。此外,用户可以通过该公式算法,加入自己的代码,进行特定的实盘操作。

 

INPUT:CYC(10,1,100,2);
RUNMODE:0; //使用逐周期运行模式

 

//保证variable声明的变量都尽量在公式的最前面,防止带有IF语句的分支执行影响变量的初始化
variable:Step = 2 / 100; //步长
variable:fMax = 20 / 100; //最大值

 

variable:sarx=0;
variable:Trend=0;
variable:EP=0;
variable:AF=0;

 

//计算高点低点的值放到IF前面,防止前面语句直接退出导致最前CYC个周期的数据无法统计到
highprice:=ref(hhv(high,cyc),1);
lowPrice:=ref(llv(low,cyc),1);

 

原始SAR:SAR(10,2,20);

 

if barpos <= Cyc then
 exit;//不到CYC的统计周期,直接退出等待下个周期再做判断

if barpos = cyc+1 then
begin
 af:=Step;
 ep:=-1;
 if (high[barpos]-high[barpos-1])+(low[barpos]-low[barpos-1]) > 0 then
 begin
  //看跌
  Trend:= -1;
  sarx:=highprice;
 end
 else
 begin
  //看涨
  Trend:= 1;
  sarx:=lowPrice;
 end
 GOTO ENDANDSHOW;//跳转到末尾直接显示
End

//判断出这些日子数据的上涨,或者下跌
if Trend > 0 then
begin
 //是否为跳转标志
 if ep > 0 then
 begin
  sarx:=lowPrice;
  EP:=-1;
  GOTO ENDANDSHOW;//跳转到末尾直接显示
 end
 
 //如果今日最高价大于前N的最高价,加速因子需要增加
 if high > highprice then
 begin
  af := af+step;
  if af > fmax then
    af := fmax;
 end
 
 fsar := sarx + af * (highprice - sarx);
 //是否跳转
 if fsar > low then
 begin
  trend:=-1;
  ep:=1;
  af:=step;
 end
 sarx:=fsar;
end
else
begin
 if ep > 0 then
 begin
  sarx:=highprice;
  ep:=-1;
  GOTO ENDANDSHOW; //跳转到末尾直接显示
 end
 
 //看跌
 if low < lowPrice then
 begin
  af := af + step;
  if af > fmax then
    af := fmax;
 end
 
 fsar := sarx + af * (lowprice-sarx);
 
 //是否跳转
 if fSar < High then
 begin
  Trend := 1;
  EP := 1;
  AF := Step;
 end
 sarx := fSar;
end

//显示变量
ENDANDSHOW@; //此为语句标号,GOGO语句可以用这个标号直接跳转到这里
ShowSar:sarx;


 回到顶部
帅哥哟,离线,有人找我吗?
lzy
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:4 积分:82 威望:0 精华:0 注册:2010/7/16 10:18:50
  发帖心情 Post By:2010/10/24 18:22:31 [只看该作者]

妙不可言  功能强大  谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
淡定688
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:80 积分:277 威望:0 精华:0 注册:2011/2/14 21:50:41
  发帖心情 Post By:2011/4/21 21:42:24 [只看该作者]

慢慢学习!谢谢分享!

 回到顶部
帅哥哟,离线,有人找我吗?
ackvz
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:618 积分:2624 威望:0 精华:0 注册:2010/4/25 15:17:16
  发帖心情 Post By:2011/4/21 22:35:42 [只看该作者]

图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
tj1abcd
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:48 积分:286 威望:0 精华:0 注册:2010/10/9 23:56:58
  发帖心情 Post By:2011/5/2 23:13:39 [只看该作者]

  //看涨
  Trend:= 1;
  sarx:=lowPrice;

 

只有标准版及其以上片本才支持逐周期模式 图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
yin8jun
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:503 积分:1033 威望:0 精华:0 注册:2011/11/18 10:56:56
  发帖心情 Post By:2012/2/14 17:26:37 [只看该作者]

序列模型能否实现上面的sar?


 回到顶部
帅哥哟,离线,有人找我吗?
GLZ0514
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:5 积分:5 威望:0 精华:0 注册:2012/3/17 21:21:22
  发帖心情 Post By:2012/3/29 22:50:19 [只看该作者]

太帅了!

 回到顶部
帅哥哟,离线,有人找我吗?
flong68
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:3 积分:16 威望:0 精华:0 注册:2012/7/4 14:47:35
  发帖心情 Post By:2012/7/4 14:52:49 [只看该作者]

谢谢分享


 回到顶部
美女呀,离线,留言给我吧!
淡月映梅
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:274 积分:956 威望:0 精华:0 注册:2012/11/27 10:33:50
  发帖心情 Post By:2013/1/5 19:58:54 [只看该作者]

楼主真的是太强大了。赞赞赞赞 。。。。

 回到顶部
帅哥哟,离线,有人找我吗?
a951116457
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:24 积分:0 威望:0 精华:0 注册:2014/2/19 14:16:50
  发帖心情 Post By:2014/5/12 15:51:49 [只看该作者]

请问 编译公式 提示  TRend 变量与函数名重复 怎么办

 回到顶部
总数 23 1 2 3 下一页