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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件策略编写求助区 → 请教编写方法,要求第一次开仓也是自动,提示往前取前若干K线收盘价定虚拟交易点

   

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


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

主题:请教编写方法,要求第一次开仓也是自动,提示往前取前若干K线收盘价定虚拟交易点

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


加好友 发短信
等级:新手上路 帖子:64 积分:442 威望:0 精华:0 注册:2011/2/21 10:45:37
请教编写方法,要求第一次开仓也是自动,提示往前取前若干K线收盘价定虚拟交易点  发帖心情 Post By:2011/4/5 18:02:48 [只看该作者]

请教版主,前时我曾以这个语句: 

开多仓条件:CLOSE>=开空以来的最低价+X;

平多仓条件:CLOSE<=开多以来的最高价-X;

开空仓条件:CLOSE<=开多以来的最高价-X;

平空仓条件:CLOSE>=开空以来的最低价+X;请教编写方法,要求第一次开仓也是自动,提示往前取前若干K线收盘价定虚拟交易点,已蒙版主帮忙编有语句(具体原码看XXN139的有关求助帖),但几经测试未能成交,一时无法找到问题,故再次求助,现将语句完善如下,请版主帮忙在原来基础上修改编译一下,非常谢谢:

缺省设置:  X缺省=350;最小=0.00001;最大=1000;           

               N缺省=60;最小=1;最大=1000;

               E缺省=10;最小=1;最大=1000;

               M1缺省=1.5;最小=0.01;最大=100;

               M2缺省=0.5;最小=0.01;最大=100;

开多条件:CLOSE>=开空以来的最低价+X并且N分钟分析周期REF(VOL,1)/REF(VOL,2)>=M1或者N分钟分析周期VOL/REF(VOL,1)>=M1;

平多条件:CLOSE<=开多以来的最高价-X并且N分钟分析周期REF(VOL,1)/REF(VOL,2)<=M2或者N分钟分析周期离收盘时间<E并且

VOL/REF(VOL,1)<=M2;

开空条件:=平多条件,即平多语句的重复;

平空条件:=开多条件,即开多语句的重复;


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


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2011/4/6 10:45:07 [只看该作者]

问题正在给您解决,根据您所提交问题的难易不同,完成的时间有可能在1-2个工作日内,请用户耐心等待



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
董小球
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 大哥
等级:超级版主 帖子:2837 积分:13237 威望:0 精华:2 注册:2010/7/14 17:31:54
  发帖心情 Post By:2011/4/6 13:08:14 [只看该作者]


input:X(350,0.00001,1000),N(60,1,1000),E(10,1,1000),M1(1.5,0.01,100),M2(0.5,0.01,100);

开多以来的最高价:=HHV(H,TYPEBAR(1,1));
开空以来的最低价:=LLV(L,TYPEBAR(1,3));
开多仓条件:=CLOSE>=开空以来的最低价+X;
平多仓条件:=CLOSE<=开多以来的最高价-X;
开空仓条件:=CLOSE<=开多以来的最高价-X;
平空仓条件:=CLOSE>=开空以来的最低价+X;

开多平空条件:=CLOSE>=开空以来的最低价+X AND REF("VOL#MIN5",1)/REF("VOL#MIN5",2)>=M1 OR "VOL#MIN5"/REF("VOL#MIN5",1)>=M1;//这里使用5分钟为例
平多开空条件:=CLOSE<=开多以来的最高价-X AND REF("VOL#MIN5",1)/REF("VOL#MIN5",2)<=M2 OR TIME-150000<E AND "VOL#MIN5"/REF("VOL#MIN5",1)<=M2;
SELL(平多开空条件,1 ,market),ORDERQUEUE;
BUYSHORT(平多开空条件,1 ,market),ORDERQUEUE;

SELLSHORT(开多平空条件,1 ,market),ORDERQUEUE;
BUY(开多平空条件,1 ,market),ORDERQUEUE;
持仓量:holding,linethick0;

 

 

以上代码可以执行,但不知道是否完全符合你的意图,你可以测测。

另外,楼主说的虚拟开仓点,最好能给出确切的量化实例,或者自己研究研究改进改进。



金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:64 积分:442 威望:0 精华:0 注册:2011/2/21 10:45:37
  发帖心情 Post By:2011/4/6 17:35:09 [只看该作者]

以上回复没有解决第一次自动买入的问题,不符原MT4方案原理,现将方案简化重贴一次,希望高手帮忙编译完整代码。

缺省设置:

N缺省=60;最小=1;最大=1000;

X缺省=350;最小=0.00001;最大=1000;

M1缺省=1.5;最小=0.001;最大=10;

M2缺省=0.5;最小=0.001;最大=10;

程序运行于1秒或10秒K线图上,程序启动时取前100根K线的收盘价为开空仓的点位,循环交易的策略如下:

开多条件:CLOSE>=开空以来的最低价+X并且N分钟分析周期的前一期VOL/前二期VOL>=M1;

平多条件:CLOSE<=开多以来的最高价-X并且N分钟分析周期的前一期VOL/前二期VOL<=M2;

开空条件:CLOSE<=开多以来的最高价-X并且N分钟分析周期的前一期VOL/前二期VOL<=M2;

平空条件:CLOSE>=开空以来的最低价+X并且N分钟分析周期的前一期VOL/前二期VOL>=M1;


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


加好友 发短信 大哥
等级:超级版主 帖子:2837 积分:13237 威望:0 精华:2 注册:2010/7/14 17:31:54
  发帖心情 Post By:2011/4/7 10:04:54 [只看该作者]

根据你说的又改进了下

 

 


input:X(350,0.00001,1000),N(60,1,1000),E(10,1,1000),M1(1.5,0.01,100),M2(0.5,0.01,100);
variable:AA=0;
IF DATACOUNT-BARPOS=100 AND C>O AND AA=0 THEN BEGIN
BUY(1,1,MARKET);
AA:=AA+1;
END
ELSE IF DATACOUNT-BARPOS=100 AND C<O AND AA=0 THEN BEGIN
BUYSHORT(1,1,MARKET);
AA:=AA+1;
END
开多以来的最高价:=HHV(H,ENTERBARS);
开空以来的最低价:=LLV(L,EXITBARS);
开多仓条件:=CLOSE>=开空以来的最低价+X;
平多仓条件:=CLOSE<=开多以来的最高价-X;
开空仓条件:=CLOSE<=开多以来的最高价-X;
平空仓条件:=CLOSE>=开空以来的最低价+X;
开多平空条件:=CLOSE>=开空以来的最低价+X AND REF("VOL#MIN5",1)/REF("VOL#MIN5",2)>=M1 OR "VOL#MIN5"/REF("VOL#MIN5",1)>=M1;//这里使用5分钟为例
平多开空条件:=CLOSE<=开多以来的最高价-X AND REF("VOL#MIN5",1)/REF("VOL#MIN5",2)<=M2 OR TIME-150000<E AND "VOL#MIN5"/REF("VOL#MIN5",1)<=M2;

{IF BARSTATUS=1 AND C>O THEN BEGIN
BUY(开多平空条件,1,market)
END
IF BARSTATUS=1 AND C<O THEN BEGIN
BUYSHORT(平多开空条件,1,market) ;
END}

IF DATACOUNT-BARPOS<100 THEN BEGIN
SELL(平多开空条件,HOLDING,market);
BUYSHORT(平多开空条件,1,market);

SELLSHORT(开多平空条件,HOLDING,market);
BUY(开多平空条件,1,market);
持仓量:holding,linethick0;
资产:ASSET,NOAXIS,colorblue;
end

[此贴子已经被作者于2011-4-7 10:15:08编辑过]


金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:64 积分:442 威望:0 精华:0 注册:2011/2/21 10:45:37
  发帖心情 Post By:2011/4/11 11:30:01 [只看该作者]

请版主再审查,看首次买入条件是否可行,谢谢!

A1:=TIME>=090000 AND TIME<112000 AND REF("VOL#MIN5",1)/REF("VOL#MIN5",
2)>=M1;
A2:=CLOSE>=LLV(L,TYPEBAR(1,3))+X AND REF("VOL#MIN5",1)/REF("VOL#MIN5",
2)>=M1;
B1:=TIME>=090000 AND TIME<112000 AND REF("VOL#MIN5",1)/REF("VOL#MIN5",
2)<=M2;
B2:=CLOSE<=HHV(H,TYPEBAR(1,1))-X AND REF("VOL#MIN5",1)/REF("VOL#MIN5",
2)<=M2;
COND1:=A1;
COND2:=A2;
COND3:=B1;
COND4:=B2;
BUY(COND1 OR COND2,1,MARKET),ORDERQUEUE;
SELL(COND4,1,MARKET),ORDERQUEUE;
BUYSHORT(COND3 OR COND4,1,MARKET),ORDERQUEUE;
SELLSHORT(COND2,1,MARKET),ORDERQUEUE;


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


加好友 发短信 大哥
等级:超级版主 帖子:2837 积分:13237 威望:0 精华:2 注册:2010/7/14 17:31:54
  发帖心情 Post By:2011/4/11 11:32:16 [只看该作者]

好 我先看看~


金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信 大哥
等级:超级版主 帖子:2837 积分:13237 威望:0 精华:2 注册:2010/7/14 17:31:54
  发帖心情 Post By:2011/4/11 14:50:01 [只看该作者]

VOL#MIN5 这里调用 切忌不要调用其他格式的,并不是所有的都可以命名为 min4 min6  min19 之类的

要按照#号说明里的支持周期来调用



金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信 大哥
等级:超级版主 帖子:2837 积分:13237 威望:0 精华:2 注册:2010/7/14 17:31:54
  发帖心情 Post By:2011/4/12 14:52:04 [只看该作者]

input:X(350,0.00001,1000),N(60,1,1000),E(10,1,1000),M1(1.5,0.01,100),M2(0.5,0.01,100);
variable:AA=0;
IF DATACOUNT-BARPOS=100 AND C>O AND AA=0 THEN BEGIN
BUY(1,1,MARKET);
AA:=AA+1;
END
ELSE IF DATACOUNT-BARPOS=100 AND C<O AND AA=0 THEN BEGIN
BUYSHORT(1,1,MARKET);
AA:=AA+1;
END
开多以来的最高价:=HHV(H,ENTERBARS);
开空以来的最低价:=LLV(L,EXITBARS);
开多仓条件:=CLOSE>=开空以来的最低价+X;
平多仓条件:=CLOSE<=开多以来的最高价-X;
开空仓条件:=CLOSE<=开多以来的最高价-X;
平空仓条件:=CLOSE>=开空以来的最低价+X;
开多平空条件:=CLOSE>=开空以来的最低价+X AND REF("VOL.volume#MIN5",1)/REF("VOL.volume#MIN5",2)>=M1 OR "VOL.volume#MIN5"/REF("VOL.volume#MIN5",1)>=M1;//这里使用5分钟为例
平多开空条件:=CLOSE<=开多以来的最高价-X AND REF("VOL.volume#MIN5",1)/REF("VOL.volume#MIN5",2)<=M2 OR TIME-150000<E AND "VOL.volume#MIN5"/REF("VOL.volume#MIN5",1)<=M2;


IF DATACOUNT-BARPOS<100 THEN BEGIN
SELL(平多开空条件,HOLDING,market);
BUYSHORT(平多开空条件,1,market);

SELLSHORT(开多平空条件,HOLDING,market);
BUY(开多平空条件,1,market);
持仓量:holding,linethick0;
资产:ASSET,NOAXIS,colorblue;
end



金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信 大哥
等级:超级版主 帖子:2837 积分:13237 威望:0 精华:2 注册:2010/7/14 17:31:54
  发帖心情 Post By:2011/4/14 15:49:32 [只看该作者]

input:X(350,0.00001,1000),N(60,1,1000),E(10,1,1000),M1(1.5,0.01,100),M2(0.5,0.01,100);
variable:AA=0;
IF DATACOUNT-BARPOS=100 AND C>O AND AA=0 THEN BEGIN
BUY(1,1,MARKET);
AA:=AA+1;
END
ELSE IF DATACOUNT-BARPOS=100 AND C<O AND AA=0 THEN BEGIN
BUYSHORT(1,1,MARKET);
AA:=AA+1;
END
开多以来的最高价:=HHV(H,ENTERBARS);
开空以来的最低价:=LLV(L,EXITBARS);
开多仓条件:=CLOSE>=开空以来的最低价+X;
平多仓条件:=CLOSE<=开多以来的最高价-X;
开空仓条件:=CLOSE<=开多以来的最高价-X;
平空仓条件:=CLOSE>=开空以来的最低价+X;
开多平空条件:=CLOSE>=开空以来的最低价+X AND REF("VOL.volume#MIN5",1)/REF("VOL.volume#MIN5",2)>=M1 OR "VOL.volume#MIN5"/REF("VOL.volume#MIN5",1)>=M1;//这里使用5分钟为例
平多开空条件:=CLOSE<=开多以来的最高价-X AND REF("VOL.volume#MIN5",1)/REF("VOL.volume#MIN5",2)<=M2 OR TIME-150000<E AND "VOL.volume#MIN5"/REF("VOL.volume#MIN5",1)<=M2;


IF DATACOUNT-BARPOS<100 THEN BEGIN
   IF HOLDING>=0 THEN BEGIN
     SELL(平多开空条件,HOLDING,market);
     BUYSHORT(平多开空条件,1,market);
   END
   IF HOLDING<=0 THEN BEGIN
 SELLSHORT(开多平空条件,HOLDING,market);
 BUY(开多平空条件,1,market);
   END
持仓量:holding,linethick0;
资产:ASSET,NOAXIS,colorblue;
end

 



金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
总数 12 1 2 下一页