设为首页收藏本站

 找回密码
 注册
楼主: nopain
打印 上一主题 下一主题

交易开拓者V4.1正式发布,欢迎下载使用! [复制链接]

Rank: 4

精华
0
UID
17607
积分
544
帖子
80
主题
40
阅读权限
50
注册时间
2010-10-14
最后登录
2023-10-9
41#
发表于 2011-4-19 00:03:58 |只看该作者
为什么V4,BAR的数量总与商品设置中样本数不符,无论如何设置,M1一分钟线总是只有100根左右,V3版时无此现象!!!!

使用道具 举报

Rank: 4

精华
0
UID
17607
积分
544
帖子
80
主题
40
阅读权限
50
注册时间
2010-10-14
最后登录
2023-10-9
42#
发表于 2011-4-19 00:05:23 |只看该作者
英文版XP还是无法使用V4,急盼解决!!!!

使用道具 举报

Rank: 7Rank: 7Rank: 7

精华
0
UID
7437
积分
2872
帖子
537
主题
133
阅读权限
80
注册时间
2010-3-15
最后登录
2013-11-15
43#
发表于 2011-4-19 09:31:07 |只看该作者
本帖最后由 欲速不达 于 2011-4-19 09:44 编辑

If ( BarStatus==0&&GetGlobalVar(1)==InvalidNumeric )//初始化
{
       SetGlobalVar(1,0);  //当前Bar开多仓,存放在全局变量1号位置初始化
}

if(A_SendOrder(Enum_Buy,Enum_Entry, Lots,Q_AskPrice()+Total_ShiftUnit))//买入开仓)
{
        SetGlobalVar(1,1); //持多仓标识
}
If(A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition(),Q_BidPrice()-Total_ShiftUnit))//平仓
  {
        SetGlobalVar(1,0); //记录持仓状态
  }
在A_SendOrder指令前加IF()的写法对后面大括号里的全局变量不执行,即使在空仓状态下,GetGlobalVar(1)的值也始终为原始赋值‘1’,空仓记录也一样不对,此模型是在V3版长期运行无问题的模型。请检查原因。

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
44#
发表于 2011-4-19 10:28:32 |只看该作者
回复 43# 欲速不达

你在{}里面加上FileAppend看看是否正常执行

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
45#
发表于 2011-4-19 10:28:52 |只看该作者
回复 42# JOONAA


正准备测试,请耐心等待。。

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
46#
发表于 2011-4-19 10:30:34 |只看该作者
回复 40# cym138

您在确认一下,是不是所有的信号都差一天?
还是单根Bar反转的情况。另外,你的Buy,Sell语句是怎么写的?

使用道具 举报

Rank: 4

精华
0
UID
6061
积分
383
帖子
100
主题
17
阅读权限
50
注册时间
2009-12-4
最后登录
2019-3-30
47#
发表于 2011-4-19 10:31:31 |只看该作者
V4版编译任何代码的模型均提示:最终目标文件编译错误!

使用道具 举报

Rank: 7Rank: 7Rank: 7

精华
0
UID
7437
积分
2872
帖子
537
主题
133
阅读权限
80
注册时间
2010-3-15
最后登录
2013-11-15
48#
发表于 2011-4-19 10:44:51 |只看该作者
回复 44# nopain
对43#反映情况找到原因了,是由于为隔夜系统在交易中途因系统崩溃重装系统后防止全局变量与持仓不符而在代码中加了一句:
if(A_BuyPosition>0&&GetGlobalVar(1)==0) SetGlobalVar(1,1);
if(A_SellPosition>0&&GetGlobalVar(2)==0) SetGlobalVar(2,-1);
此段在V3中没问题,但由于V4的无效值传递机制改变,而在BarStatus==0和BarStatus==1的bar也符合以上条件,在BarStatus==2bar之前的bar赋值了,又传递到BarStatus==2的bar上了。上面代码改成:
if(A_BuyPosition>0&&GetGlobalVar(1)==0&&BarStatus==2) SetGlobalVar(1,1);
if(A_SellPosition>0&&GetGlobalVar(2)==0&&BarStatus==2) SetGlobalVar(2,-1);
问题就解决了。谢谢!

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
49#
发表于 2011-4-19 10:55:40 |只看该作者
回复 48# 欲速不达


   

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
50#
发表于 2011-4-19 10:56:35 |只看该作者
回复 47# xiaocai550

贴个图看看

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-4-20 03:00

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部