Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共11 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:求助高手写一个高低价均线交易的策略

1楼
qazplm 发表于:2012/9/4 12:31:14

N:=barslast(date<>ref(date,1))+1;

(最高价平价均线):=MA(HIGH,N);

(最低价平价均线):=MA(LOW,N);

在一分钟周期图中,每天都重新计算均线

当最高价上穿(最高价平价均线)买开一手,买开后开始记录(最低价平价均线)的最高点,当最低价下穿买开后的(最低价平价均线)的最高点,平掉一手多单,卖开一手空单。卖开后开始记录(最高价平价均线)的最低点,当最高价上穿卖开后的(最高价平价均线)的最低点,平掉一手空单,买开一手多单。。。循环交易。

或者当最低价下穿(最低价平价均线)卖开一手,卖开后开始记录(最高价平价均线)的最低点,当最高价上穿卖开后的(最高价平价均线)的最低点,平掉一手空单,买开一手多单。买开后开始记录(最低价平价均线)的最高点,当最低价下穿买开后的(最低价平价均线)的最高点,平掉一手多单,卖开一手空单。。。循环交易。

在收盘前一分钟,多单空单全部平仓

2楼
just 发表于:2012/9/4 15:28:40
工作人员在处理,稍后回复。
3楼
jinzhe 发表于:2012/9/4 15:33:11

写了第一个循环的,第二循环的你反过来写就可以了。收盘前平仓不难,自己写下吧

 

N:=barslast(date<>ref(date,1))+1;

gaojunxian:=MA(HIGH,N);

dijunxian:=MA(LOW,N);
variable:gao=0,di=1000000;

if cross(h,gaojunxian) then begin
 buy(holding=0,1,market);
 gao:=gaojunxian;
 end
 
if gaojunxian>gao then gao:=gaojunxian;

if cross(gao,l) then begin
 sell(holding>0,0,market);
 buyshort(holding=0,1,market);
 di:=dijunxian;
 
end

if dijunxian<di then di:=dijunxian;

if cross(h,di) then begin
 sellshort(holding<0,0,market);
 buy(holding=0,1,market);
end

4楼
qazplm 发表于:2012/9/4 18:58:27
谢谢高人指点
5楼
漫步金字塔 发表于:2012/9/6 20:33:18

老师,楼上要求的买入后,计算买如后dijunxian的最高点,老师直接计算的是每日低均线的最低点,好像有点不符合要求啊!

 

这样写对吗?

N:=BARSLAST(HOLDING>0)+1;

GAO:=HHV(DIJUNXIAN,N);

M:=BARSLAST(HOLDING<0)+1;

DI:=LLV(GAOJUNXIAN,M);

当持有多单时,地均线的最高值。

当持有空单时,高均线的最低值。

6楼
jinzhe 发表于:2012/9/7 8:55:22
以下是引用漫步金字塔在2012-9-6 20:33:18的发言:

老师,楼上要求的买入后,计算买如后dijunxian的最高点,老师直接计算的是每日低均线的最低点,好像有点不符合要求啊!

 

这样写对吗?

N:=BARSLAST(HOLDING>0)+1;

GAO:=HHV(DIJUNXIAN,N);

M:=BARSLAST(HOLDING<0)+1;

DI:=LLV(GAOJUNXIAN,M);

当持有多单时,地均线的最高值。

当持有空单时,高均线的最低值。

思路正确,该这么写,我的写法逻辑不严密

7楼
qazplm 发表于:2012/9/7 15:44:07

N:=barslast(date<>ref(date,1))+1;

gaojunxian:=MA(HIGH,N);

dijunxian:=MA(LOW,N);
variable:gao=0,di=1000000;

N:=BARSLAST(HOLDING>0)+1;

GAO:=HHV(DIJUNXIAN,N);

M:=BARSLAST(HOLDING<0)+1;

DI:=LLV(GAOJUNXIAN,M);

if cross(h,gaojunxian) then begin
 buy(holding=0,1,market);
 gao:=gaojunxian;
 end
 
if gaojunxian>gao then gao:=gaojunxian;

if cross(gao,l) then begin
 sell(holding>0,0,market);
 buyshort(holding=0,1,market);
 di:=dijunxian;
 
end

if dijunxian<di then di:=dijunxian;

if cross(h,di) then begin
 sellshort(holding<0,0,market);
 buy(holding=0,1,market);
end

 

 

这样写对吗?

8楼
jinzhe 发表于:2012/9/7 15:47:57
可以这么写
9楼
qazplm 发表于:2012/9/8 15:26:57

好像不对啊,根本没有交易信号

请高手重新写一下

10楼
qazplm 发表于:2012/9/10 12:26:39

请高手重新写一下

共11 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in 0.01758 s, 3 queries.