以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  策略编写求助区  (http://weistock.com/bbs/list.asp?boardid=11)
----  [求助]帮忙编辑公式  (http://weistock.com/bbs/dispbbs.asp?boardid=11&id=7089)

--  作者:hsl2069
--  发布时间:2011/7/4 14:45:57
--  [求助]帮忙编辑公式

首先做了一个通道,A,B分别是通道的上轨和下轨。
假设价格处于上涨趋势中,A,B也分别跟随价格上升,这时观察B值的变化,因为每一天的B值是不一样的,取当前的B值与前1期或几期的B值比较,在每个B值高点的位置画线,每次有新的B值高点时,则在新的B值高点的位置画线。如果新的B值比前面的B值低,则延续前面B值高点的位置画线,直至收盘价跌破B值的画线位置,这时改为观察A值的变化。观察A值时正好与B值相反。
在这里,当前的B值与前1期或几期的B值比较时,期间的周期是无法确定的。
画线是从新的B值高点所在周期的位置开始到下一个新的B值高点的前一个周期的位置,因为有新的B值高点后,就应重新开始画线了。
另外,在实际图形中,如果价格上涨,则只对下轨B值画线,如果价格下跌,则只对上轨A值画线。

 

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


--  作者:屎头
--  发布时间:2011/7/4 15:24:07
--  
楼主的描述太主观了,没有一点可以量化的东西,没办法写成代码的; 例如A B是怎么确立的,这样的基本条件都没有,指标根本无从下手的,所以楼主先自己做好量化,然后再寻求帮助比较靠谱~
--  作者:hsl2069
--  发布时间:2011/7/4 23:08:00
--  
不好意思可能没有说清楚,A,B是已经做好的,只需要完成后面对A,B的描述。
--  作者:董小球
--  发布时间:2011/7/5 9:06:32
--  

1、价格处于上涨趋势 这句怎么判断是上涨趋势

2、A,B也分别跟随价格上升 这句怎么叫做上升

 

。。。。。。。。。。。。。。太多都要量化

 

1、例如你给出 当前K线收盘价大于上根K线收盘价x%个点位,并且持续M个周期符合上面描述,算作上涨趋势

这样的描述才是可以量化的东西,写代码必须用到精确是数字和明确的判断,不说明这些,代码书写人就无从下手,因为一个上涨趋势就有无数种理解,只有你给定了可以唯一的条件描述,这样才叫做量化~


--  作者:hsl2069
--  发布时间:2011/7/5 10:32:15
--  

对不起,我还是没有说清楚,其实“价格处于上涨趋势中,A,B也分别跟随价格上升”只是一个假设,可以不用考虑。

现在是已经有了确定的A,B,然后考虑当前A,B与前期A,B的值的大小,同时与当前收盘价做比较。我在编写时只是不知道该用哪个函数。

这样吧,我一点一点说吧,希望能说清楚。

 


--  作者:hsl2069
--  发布时间:2011/7/5 10:40:11
--  

比较当前周期A,B与前几期的A,B的值的大小,至于是前几个周期在这里不好确定,就是说,只要是B创新高,就在B的新高位置画线,只要A创新低,就在A的新低位置画线,没有创新高、新低的话,就延续前面已经确定的A,B的位置继续画线。

对上面的描述,应该使用哪些函数,能不能写的出来呢?或者是还需要哪些条件?

[此贴子已经被作者于2011-7-5 10:41:30编辑过]

--  作者:fly
--  发布时间:2011/7/5 16:58:32
--  

当前H,就用H表示

前30周期的新高,H30:HHV(HIGH,30);

 

不知道以下是否可以满足要求:

h30 := ref(hhv(high,30),1);
l30 := ref(llv(low,30),1);

 

high>h30   //当前周期H大于前30周期的最高

low<l30     //当前周期L小于前30周期的最低


--  作者:hsl2069
--  发布时间:2011/7/6 12:38:51
--  

谢谢小飞侠。

我下来重新考虑了一下,看看这样描述对不对:

1、已知通道上轨A和通道下轨B;

2、比较当前A与向前M周期中的A,看是否有新低A,求得最近的新低A,如果没有新低A,就取上一次的低点A。

3、比较当前B与向前M周期中的B,看是否有新高B,求得最近的新高B,如果没有新高B,就取上一次的高点B。

4、当收盘价上破低点A时,在高点B处画圆点。在接下来的价格波动中,如果收盘价没有下破高点B,则一直在高点B画圆点标记。如果有新的高点B,就在新的高点B处画圆点。

5、当收盘价下破高点B时,在低点A处画圆点。在接下来的价格波动中,如果收盘价没有上破低点A,则一直在低点A画圆点标记。如果有新的低点A,就在新的低点A处画圆点。

 

不知道这样是否说清楚了。


--  作者:董小球
--  发布时间:2011/7/8 15:07:08
--  


AA:=LLV(A,M);
BB:=HHV(B,M);

IF C>AA   THEN BEGIN
DRAWICON(C>BB,B,1);
DRAWICON(B>REF(BB,1),B,1);
END

IF C<BB   THEN BEGIN
DRAWICON(C<AA,A,1);
DRAWICON(A<REF(AA,1),A,1);
END

 

代码大概是这样的,但是不知道你的A和B到底是什么 ,所以你根据这个思路再修改修改吧

 


--  作者:董小球
--  发布时间:2011/7/25 9:00:40
--  日内低频策略,适合中大资金
还要怎么修改啊,看不懂你的短信