以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 请老师帮忙,关于SAR (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=12713) |
-- 作者:id773161 -- 发布时间:2012/6/29 15:29:46 -- 请老师帮忙,关于SAR 敬爱的各位老师,前辈,小弟不才,特向各位请教:
如何实现 文华 sar(4,0.02,0.2);
(个人发现文华与金字塔K线时间不一致,导致了步长4与10的位置不同,导致数据输出不一样,望高手指点。) |
-- 作者:董小球 -- 发布时间:2012/6/29 15:41:36 -- 金字塔里的 2代表2%的步长,20代表20%的极限值 楼主看看是否跟文化表述是不同的 所以导致了你的困惑 另外K线时间应该不是问题,因为毕竟每天的K线总数目是相同的,时间名称是没关系的
|
-- 作者:id773161 -- 发布时间:2012/6/29 16:12:36 -- 我刚才测试了下,金字塔 SAR(4,10,20); 数据与文华差别不是很大 还是不能一致 |
-- 作者:id773161 -- 发布时间:2012/7/3 14:50:59 -- 在线求解 这是文华里 豆粕M1301 7月3日 9:53分 SAR止损点的数值 :SARLINE:3463.52 如图: 金字塔软件里 豆粕M01 7月3日 9:53分 SAR止损点的数值 :VARSAR:3463.275 如图 文华 sar(4,0.02,0.2); 除了周期外,步长 和 极限值 其实和文华是一样的。 于是金字塔我编写了 SAR(4,2,20)求值 VARSAR: 3463.24
|
-- 作者:id773161 -- 发布时间:2012/7/3 14:52:13 -- 如图
为什么不一样呢? 请哪位大师指点一二,万分感激,求相同! |
-- 作者:id773161 -- 发布时间:2012/7/3 16:03:49 -- 自己顶下。 |
-- 作者:id773161 -- 发布时间:2012/7/4 10:35:06 -- 【汉宇汇金】SAR的算法
首先要确定是涨势还是跌势,并且得出起算点。有多种不同的确定方法,这里略过。 一、涨势中算法 1.涨势中第一步,假设时间段是t 那SAR(t)等于前面N个时间段(即,t-N,……,t-1时间段)中的最低价格。 如果SAR(t)大于t时间段的最低价L(t),则发生跳转,在下一个时间段时进入跌势; 如果SAR(t)不大于t时间段的最低价L(t),在下一个时间段时进入涨势第二步;并且,极值Ep(t)等于最近N个时间段(即t-N+1,……,t时间段)的最高价格;Af(t)=0.02。 2.涨势中的第二步,时间段是t+1 SAR(t+1)=SAR(t)+Af(t)*(Ep(t) – SAR(t))。 如果SAR(t+1)大于t+1时间段的最低价L(t+1),则发生跳转,在下一个时间段时进入跌势; 如果SAR(t+1)不大于t+1时间段的最低价L(t+1),,进入涨势下一步;并且,极值Ep(t+1)等于最近N个时间段(即t-N+2,……,t+1时间段)的最高价格;如果该时间段的最高价,即H(t+1)比前面N个时间段(即,t-N+1,……,t)的最高价高,则AF(t+1)=AF(t)+0.02,否则,AF(t+1)=AF(t)。 3.接下来,在后面的时间段t+2,t+3,……,上重复涨势第二步中的算法,直到发生跳转为止。另外,AF的最大值是0.2。 二、跌势中的算法 1.跌势中第一步,假设时间段是t 那SAR(t)等于前面N个时间段(即,t-N,……,t-1时间段)中的最高价格。 如果SAR(t)小于t时间段的最高价H(t),则发生跳转,在下一个时间段时进入涨势; 如果SAR(t)不小于t时间段的最高价H(t),在下一个时间段时进入跌势第二步;并且,极值Ep(t)等于最近N个时间段(即t-N+1,……,t时间段)的最低价格;Af(t)=0.02。 2.跌势中的第二步,时间段是t+1 SAR(t+1)=SAR(t)+Af(t)*(Ep(t) – SAR(t)). 如果SAR(t+1)小于t+1时间段的最高价H(t+1),则发生跳转,在下一个时间段时进入涨势; 如果SAR(t+1)不小于t+1时间段的最高价L(t+1),,进入跌势下一步;并且,极值Ep(t+1)等于最近N个时间段(即t-N+2,……,t+1时间段)的最低价格;如果该时间段的最低价L(t+1),比前面N个时间段(即,t-N+1,……,t)的最低价低,则AF(t+1)=AF(t)+0.02,否则,AF(t+1)=AF(t)。 3.接下来,在后面的时间段t+2,t+3,……,上重复跌势第二步中的算法,直到发生跳转为止。另外,AF的最大值是0.2。 市场上的SAR算法有许多中,大体结构和上面的算法差不多,但在下面的某个或某几个方面和上面的算法不同。由于涨势和跌势中的算法都是对称的,下面只说明在涨势中不同之处。 一、第一步中的SAR(t)的确定算法不同。有的算法是把前一个波段(即前面的整个跌势波段)中的最低价格作为SAR(t)的值。 (下面假设当前时间段是t+m时间段。) 二、EP的确定算法不同。有的算法是把从t时间段到t+m时间段,即本波涨势(即本个上涨波段)中到t+m时间段为止的所有时间段,的最高价格作为EP(t+m);还有的算法是把t+m时间段的最高价作为EP(t+m)。 三、加速因子调整的触发条件不同。有的算法是是当本时间段中的最高价H(t+m)大于本波涨势中前面所有时间段中的最高价时,调整加速因子;有的算法是当当本时间段中的最高价H(t+m)大于本波涨势中前一个时间段中的最高价H(t+m-1)时,调整加速因子。 四、跳转的时间不同。上面的算法中,当t+m时间段的SAR(t+m)大于t+m时间段的最低价L(t+m)时,在下一个时间段发生跳转,即在下一个时间段进入跌势;而有的算法是当t+m时间段中的价格小于SAR(t+m)时,立刻(马上)发生跳转,即在t+m时间段就进入跌势,这时SAR(t+m)的值也发生了变化,按照跌势中第一步中的算法来确定。 五、加速因子调整的时间不同。上面的算法中,如果在t+m时间段满足了调整加速因子的触发条件,在计算SAR(t+m)时仍然使用调整前的加速因子来计算,而将调整后的加速因子用于SAR(t+m+1)的计算。有的算法是,如果在t+m时间段中的某个时间点上满足了调整加速因子的触发条件,那就立刻使用调整后的加速因子来计算SAR(t+m),也就是说, SAR(t+m)马上发生了变化。(还有一种算法似乎是前面两中算法的折中,有两个条件:(1)计算本波涨势中第二时间段SAR(t+1)时的加速因子一定是0.02;(2)计算某时间段SAR(t+m)的加速因子与计算前一时间段SAR(t+m-1)的加速因子之差小于等于0.02。当t+n时间段中(在这里使用t+n是为了与t+m区别开来,以免混淆或误解;这里的t+n也是指当前时间段)某时间点的价格大于本波涨势中前面所有时间段中的最高价时,如果满足前面两条件,马上调整加速因子并计算新的SAR(t+n),否则就在计算完本时间段的SAR(t+n)之后(实际上就是对SAR(t+n)不做改变)再调整加速因子,并用于下一个时间段的SAR(t+n+1)的计算。) 实际观察 一、文华财经软件在计算涨势第一步中的SAR(t)时,是将前面的跌势波段中的最低价作为SAR(t)的值。 二、文华财经在计算涨势第二步中的SAR(t+1)时,所用的加速因子都是0.02。 问题 一、SAR方法较常用的日SAR还是某分钟的SAR? 二、怎样检验哪一种算法或者哪一组参数更好用? |
-- 作者:lakehere -- 发布时间:2013/10/21 21:07:07 --
这个问题解决了没有,我现在也碰到一样的。
哪个比较接近
怎么计算。。。
|
-- 作者:王锋 -- 发布时间:2013/10/22 17:25:57 -- 使用金字塔PEL语言实现的SAR算法,可以加工用户特定的移动止损功能 http://www.weistock.com/bbs/dispbbs.asp?BoardID=10&ID=3437&replyID=&skin=1
参考上述帖子,代码上面了,怎么改造看你本事了 |