设为首页收藏本站

 找回密码
 注册
查看: 1950|回复: 3
打印 上一主题 下一主题

版主!为啥此程序会乱发单? [复制链接]

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
跳转到指定楼层
1#
发表于 2017-7-3 22:06:30 |只看该作者 |倒序浏览
Params
Numeric offset(6)        ;        //此处添加参数
Numeric a(5);
Numeric b(10);
Numeric e(20);

Numeric f(80);


Vars
Numeric aa;
Numeric bb;
Numeric cc;
Numeric dd;

Numeric totalequity;
Numeric turtleunits;
        //此处添加变量

Begin
if(date!=date[1] && high==low)
Return;
aa=Average(close,a);
bb=Average(close,b);
cc=average(close,e);
dd=Average(close,f);
TotalEquity = Portfolio_CurrentCapital() + Portfolio_UsedMargin();   //账户最新资产 = 按当前Bar开盘价计算的可用资金 + 持仓保证金
TurtleUnits=(TotalEquity/(MarginRatio*ContractUnit()*BigPointValue()*Close))*3/10;
TurtleUnits = IntPart(TurtleUnits); // 对小数取整
if(BarStatus==2 || GetGlobalVar(0)==InvalidNumeric)
SetGlobalVar(0,0);

if(A_BuyPosition==0 && A_SellPosition==0 && GetGlobalVar(0)==0)
{
if(aa>dd && bb>dd &&  cc>dd)
{

A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_BidPrice+offset*MinMove*PriceScale);

}
Else if(aa<dd && bb<dd && cc<dd)
{

A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
}
}
if(A_SellPosition>0 && GetGlobalVar(0)==0)
{
if(aa>dd && bb>dd &&  cc>dd)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_BidPrice+offset*MinMove*PriceScale);
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_BidPrice+offset*MinMove*PriceScale);

}
}
if(A_BuyPosition>0 && GetGlobalVar(0)==0)
{
if(aa<dd && bb<dd && cc<dd)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
}
}
End
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
2#
发表于 2017-7-4 09:37:23 |只看该作者
A函数的用法与buy\sell等图表信号函数的用法不同。。是需要自己用代码来控制下单 次数的 。。
一般是使用全局变量进行控制,避免对一个条件多次满足后的重复发单 。
上述代码中,全局变量的初始化并不合理,且在执行委托后并没有及时将全局变量赋值 改变其值,以达到控制下单的目的。
建议还是系统学习后再来使用A函数。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
3#
发表于 2017-7-4 16:46:33 |只看该作者
谢谢!

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
4#
发表于 2017-7-4 17:05:51 |只看该作者
本帖最后由 qsb588986 于 2017-7-5 05:26 编辑

版主!  这样可以吧!
Params
Numeric offset(6)        ;        //此处添加参数
Numeric a(5);
Numeric b(10);
Numeric e(20);

Numeric f(80);


Vars
Numeric aa;
Numeric bb;
Numeric cc;
Numeric dd;

Numeric totalequity;
Numeric turtleunits;
        //此处添加变量

Begin
if(date!=date[1] && high==low)
Return;
aa=Average(close,a);
bb=Average(close,b);
cc=average(close,e);
dd=Average(close,f);
TotalEquity = Portfolio_CurrentCapital() + Portfolio_UsedMargin();   //账户最新资产 = 按当前Bar开盘价计算的可用资金 + 持仓保证金
TurtleUnits=(TotalEquity/(MarginRatio*ContractUnit()*BigPointValue()*Close))*3/10;
TurtleUnits = IntPart(TurtleUnits); // 对小数取整
if(BarStatus==0 || GetGlobalVar(0)==InvalidNumeric)
SetGlobalVar(0,0);
setglobalvar(1,1);
setglobalvar(2,1);



if(A_BuyPosition==0 && A_SellPosition==0 && GetGlobalVar(0)==0)
{
if(aa>dd && bb>dd &&  cc>dd)
{

A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_BidPrice+offset*MinMove*PriceScale);
SetGlobalVar(0,1);
SetGlobalVar(2,1);
}
Else if(aa<dd && bb<dd && cc<dd)
{

A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(0,1);
SetGlobalVar(1,1);
}
}
if(A_SellPosition>0 && GetGlobalVar(1)==1)
{
if(aa>dd && bb>dd &&  cc>dd)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_BidPrice+offset*MinMove*PriceScale);
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_BidPrice+offset*MinMove*PriceScale);
SetGlobalVar(1,2);
SetGlobalVar(2,1);
}
}
if(A_BuyPosition>0 && GetGlobalVar(2)==1)
{
if(aa<dd && bb<dd && cc<dd)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(2,2);
SetGlobalVar(1,1);
}
}
End

使用道具 举报

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

bottom

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

GMT+8, 2024-5-23 10:00

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部