- 精华
- 0
- 在线时间
- 525 小时
- UID
- 213396
- 积分
- 187
- 帖子
- 140
- 阅读权限
- 40
- 注册时间
- 2015-7-10
- 最后登录
- 2023-4-14
- 精华
- 0
- UID
- 213396
- 积分
- 187
- 帖子
- 140
- 主题
- 26
- 阅读权限
- 40
- 注册时间
- 2015-7-10
- 最后登录
- 2023-4-14
|
修改后再发:
Params
Numeric offset(6) ;//此处添加参数
Vars
Numeric a;
Numeric b;
Numeric qq;
Numeric ww;
Numeric aa;
NumericSeries r;
Numeric ee;
Numeric cc;
Numeric vv;
Numeric mm;
Numeric hh;
Numeric totalequity;
Numeric turtleunits;
Numeric n;
Numeric m;
Numeric i;
Numeric pp;
Numeric tt;
Numeric dd;
Numeric xx;
Bool con1;
Bool con2;
//此处添加变量
Begin
a=Highest(high,20);
b=Lowest(low,20);
qq=Highest(high,4);
ww=Lowest(low,4);
n=highest(high,8);
m=lowest(low,8);
aa=offset*MinMove*PriceScale;
r=(a+b)/2;
ee=PercentR(20);
hh=Date+Time;
vv=GetGlobalVar(3);
cc=vv+0.00002;
mm=Date+time;
pp=Date+Time;
tt=GetGlobalVar(4);
dd=tt+0.000002;
xx=Date+Time;
TotalEquity = A_FreeMargin() + A_TotalMargin(); //账户最新资产 = 按当前Bar开盘价计算的可用资金 + 持仓保证金
TurtleUnits=(TotalEquity/(MarginRatio*ContractUnit()*BigPointValue()*Close))*3/10;
TurtleUnits = IntPart(TurtleUnits); // 对小数取整
if(A_BuyPosition==0 && A_SellPosition==0)
{
If(close<n-25 && close<m+2)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
}
Else
If(close>m+25 && close>n-2)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
}
}
if(A_BuyPosition==0 && A_SellPosition==0 && mm>cc && GetGlobalVar(10)==1)
{
If(close<n-25 && close<m+2)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(8,1);
SetGlobalVar(10,2);
}
Else
if(close<r[10]-19 && close<qq-9)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(8,1);
SetGlobalVar(10,2);
}
Else
if(close<qq-22)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(8,1);
SetGlobalVar(10,2);
}
Else
if(close<high-14)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(8,1);
SetGlobalVar(10,2);
}
Else
If(close>m+25 && close>n-2)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(9,1);
SetGlobalVar(10,2);
}
Else
if(close>r[10]+19 && close>ww+9)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(9,1);
SetGlobalVar(10,2);
}
Else
if(close>ww+22)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(9,1);
SetGlobalVar(10,2);
}
Else
if(close>Low+14)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(9,1);
SetGlobalVar(10,2);
}
}
If(A_BuyPosition>0 && mm>cc)
{
if(close<r[10]-19 && close<qq-9)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
SetGlobalVar(6,1);
SetGlobalVar(3,hh);
}
Else
If(close<n-25 && close<m+2)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
SetGlobalVar(6,1);
SetGlobalVar(3,hh);
}
Else
if(close<qq-22)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
SetGlobalVar(6,1);
SetGlobalVar(3,hh);
}
Else
if(close<high-14)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
SetGlobalVar(6,1);
SetGlobalVar(3,hh);
}
Else
if(A_BuyAvgPrice-close>10 && GetGlobalVar(9)==1)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(9,2);
SetGlobalVar(10,1);
}
}
if(xx>dd && GetGlobalVar(6)==1 || A_FreeMargin>10000 && GetGlobalVar(6)==1)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(6,2);
SetGlobalVar(8,1);
}
If(A_SellPosition>0 && mm>cc)
{
if(close>r[10]+19 && close>ww+9)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
SetGlobalVar(7,1);
SetGlobalVar(3,hh);
}
Else
If(close>m+28 && close>n-2)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
SetGlobalVar(7,1);
SetGlobalVar(3,hh);
}
Else
if(close>ww+22)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
SetGlobalVar(7,1);
SetGlobalVar(3,hh);
}
Else
if(close>Low+14)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
SetGlobalVar(7,1);
SetGlobalVar(3,hh);
}
Else
if(close-A_SellAvgPrice>10 && GetGlobalVar(8)==1)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(3,hh);
SetGlobalVar(8,2);
SetGlobalVar(10,1);
}
}
if(xx>dd && GetGlobalVar(7)==1 || A_FreeMargin>10000 && GetGlobalVar(7)==1)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(7,2);
SetGlobalVar(9,1);
}
End |
|