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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 写的这段程序是不是存在问题!请老师给修改一下

   

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


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

主题:写的这段程序是不是存在问题!请老师给修改一下

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


加好友 发短信
等级:论坛游民 帖子:209 积分:0 威望:0 精华:0 注册:2014/9/15 21:05:19
写的这段程序是不是存在问题!请老师给修改一下  发帖心情 Post By:2014/11/18 10:20:51    Post IP:182.32.75.107[只看该作者]

MA1:=MA(CLOSE,1);
MA2:=o5,LINETHICK0;
variable:maxprofit=0;//有仓位时最大获利幅度
//开多
IF CROSS(MA1,MA2) THEN
BEGIN
SELLSHORT( HOLDING<0,HOLDING,market); //平空操作
BUY( HOLDING=0,1,market);//开多操作 
 maxprofit:=0;
END//平仓
SELL(CROSS(MA2,MA1) and  HOLDING>0,HOLDING,market);//平多
BUYSHORT(CROSS(MA2,MA1) and HOLDING=0,1,market); //开空操作

//判断当前持仓状态下的最大盈利

 

问题请教:开多和平空是不是要分开写,再加一个循环。谢谢


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/11/18 10:22:57    Post IP:58.246.57.26[只看该作者]

编译下来:o5未定义

 



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

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

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

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


加好友 发短信
等级:论坛游民 帖子:209 积分:0 威望:0 精华:0 注册:2014/9/15 21:05:19
  发帖心情 Post By:2014/11/18 10:28:57    Post IP:182.32.75.107[只看该作者]

有,我没有显示。他不是问题。只要循环不存在问题就行,谢谢!

 

 


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


加好友 发短信
等级:论坛游民 帖子:209 积分:0 威望:0 精华:0 注册:2014/9/15 21:05:19
  发帖心情 Post By:2014/11/18 10:31:51    Post IP:182.32.75.107[只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2014/11/18 10:32:06编辑过]

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/11/18 10:34:49    Post IP:58.246.57.26[只看该作者]

你的代码哪里能体现出循环了?你是不是把 if  begin   end当循环了?


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

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

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

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


加好友 发短信
等级:论坛游民 帖子:209 积分:0 威望:0 精华:0 注册:2014/9/15 21:05:19
  发帖心情 Post By:2014/11/18 10:43:32    Post IP:182.32.75.107[只看该作者]

可能吧,我就是想让他实现:M1、M2死叉平多开空;M1/M2金叉平空开多;你看这种写法可以吗?现在的持仓是:有正有负个一首
[此贴子已经被作者于2014/11/18 10:44:54编辑过]

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/11/18 10:44:13    Post IP:58.246.57.26[只看该作者]

用IF  BEGIN 

END的写法好,通用性强



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

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

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

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


加好友 发短信
等级:论坛游民 帖子:209 积分:0 威望:0 精华:0 注册:2014/9/15 21:05:19
  发帖心情 Post By:2014/11/18 10:47:54    Post IP:182.32.75.107[只看该作者]

主要一个方向持仓就行了,老师看看如何处理,给改一下吧!
图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/11/18 10:52:59    Post IP:58.246.57.26[只看该作者]

这样的程序代码,但是你有两个方向的持仓,说明不是程序的问题,是你该平的单子没平掉


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

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

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

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


加好友 发短信
等级:论坛游民 帖子:209 积分:0 威望:0 精华:0 注册:2014/9/15 21:05:19
  发帖心情 Post By:2014/11/18 10:53:37    Post IP:182.32.75.107[只看该作者]

MA1:=MA(CLOSE,1)*ml;
MA2:=o5*ml,LINETHICK0;
variable:maxprofit=0;//有仓位时最大获利幅度
//开多
IF CROSS(MA1,MA2) THEN
BEGIN

SELLSHORT( HOLDING<0,HOLDING,market); //平空操作
BUY( HOLDING=0,1,market);//开多操作 
 maxprofit:=0;
END//平仓
SELL(CROSS(MA2,MA1) and  HOLDING>0,HOLDING,market);//平多
BUYSHORT(CROSS(MA2,MA1) and HOLDING=0,1,market); //开空操作
//判断当前持仓状态下的最大盈利
win:=0;
win2:=0;
if holding > 0 and enterbars > 0 then
begin
 win:=(c-enterprice)/enterprice*100; //记录最大盈利
 if win > maxprofit then
  maxprofit:=win; 
 win2:=(maxprofit-win)/maxprofit*100; //最大盈利后的回调幅度
end
if holding < 0 and enterbars > 0 then
begin
 win:=(enterprice-c)/enterprice*100; //记录最大盈利
 if win > maxprofit then
  maxprofit:=win; 
 win2:=(maxprofit-win)/maxprofit*100; //最大盈利后的回调幅度
end
//出现浮动亏损比如2%平仓
止损:SELL(win < -1,0);
//出现最高盈利后,回落到盈利的60%平仓出场
//止赢:SELL(win2 >=60 and openprofit > 0, 0);

请老师给指导一下这段程序是否存在问题(O5可以随便设一下,我自己设置好的就不说);


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