设为首页收藏本站

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

发一个自己编写的可以赚钱的策略。望大家帮忙提高。 [复制链接]

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
跳转到指定楼层
1#
发表于 2016-11-28 20:41:06 |只看该作者 |倒序浏览
用了横盘和反转,趋势等三种情况。希望大家帮改进!

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;
//此处添加变量

Begin
a=Highest(high,20);
b=Lowest(low,20);
qq=Highest(high,3);
ww=Lowest(low,3);
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.000005;
xx=Date+Time;

TotalEquity = A_FreeMargin() + A_TotalMargin();   //账户最新资产 = 按当前Bar开盘价计算的可用资金 + 持仓保证金
TurtleUnits=(TotalEquity/(MarginRatio*ContractUnit()*BigPointValue()*Close))*3/10;
TurtleUnits = IntPart(TurtleUnits); // 对小数取整

If(close<n-32 && close<m+2 && A_BuyPosition==0 && A_SellPosition==0)
{
SellShort(TurtleUnits,Close);
SetGlobalVar(3,hh);
}
If(close>m+32 && close>n-2 && A_BuyPosition==0 && A_SellPosition==0)
{
Buy(TurtleUnits,Close);
SetGlobalVar(3,hh);
}
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);
if(xx>dd || A_FreeMargin>10000)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
}
SetGlobalVar(3,hh);
}
Else
If(close<n-32 && close<m+2)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
if(xx>dd || A_FreeMargin>10000)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
}
SetGlobalVar(3,hh);
}
Else
if(close<qq-29)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
if(xx>dd || A_FreeMargin>10000)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
}
SetGlobalVar(3,hh);
}
Else
if(close<high-19)
{
A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,Q_BidPrice-offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
if(xx>dd || A_FreeMargin>10000)
{
A_SendOrder(Enum_Sell,Enum_Entry,TurtleUnits,Q_BidPrice-offset*MinMove*PriceScale);
}
SetGlobalVar(3,hh);
}
}
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);
if(xx>dd || A_FreeMargin>10000)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
}
SetGlobalVar(3,hh);
}
Else
If(close>m+32 && close>n-2)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
if(xx>dd || A_FreeMargin>10000)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
}
SetGlobalVar(3,hh);
}
Else
if(close>ww+29)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
if(xx>dd || A_FreeMargin>10000)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
}
SetGlobalVar(3,hh);
}

Else
if(close>Low+19)
{
A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,Q_AskPrice+offset*MinMove*PriceScale);
SetGlobalVar(4,pp);
if(xx>dd || A_FreeMargin>10000)
{
A_SendOrder(Enum_Buy,Enum_Entry,TurtleUnits,Q_AskPrice+offset*MinMove*PriceScale);
}
SetGlobalVar(3,hh);
}
}         
End

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
2#
发表于 2016-11-28 20:44:52 |只看该作者
用的是螺纹钢1701一分钟用期。

使用道具 举报

Rank: 2

精华
0
UID
237254
积分
114
帖子
78
主题
23
阅读权限
30
注册时间
2016-7-19
最后登录
2022-7-27
3#
发表于 2016-12-6 17:53:36 |只看该作者
1分钟,肯定亏得不像样,5分钟都很难

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
4#
发表于 2016-12-7 13:31:47 |只看该作者
我这程序抓得很准!1分钟没问题。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
5#
发表于 2016-12-7 19:57:22 |只看该作者
修改后再发:

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

使用道具 举报

精华
0
UID
239207
积分
140
帖子
53
主题
27
阅读权限
0
注册时间
2016-8-22
最后登录
2017-6-12
6#
发表于 2016-12-8 14:27:27 |只看该作者
看一下您的交易曲线

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
7#
发表于 2016-12-11 14:55:37 |只看该作者
好久没看了。
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
30248
积分
220
帖子
144
主题
23
阅读权限
40
注册时间
2011-3-24
最后登录
2022-2-22
8#
发表于 2016-12-11 22:44:40 |只看该作者
加载公式到K线图上,完全没有任何信号。为什么?

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
213396
积分
187
帖子
140
主题
26
阅读权限
40
注册时间
2015-7-10
最后登录
2023-4-14
9#
发表于 2016-12-11 23:08:55 |只看该作者
这是实盘程序!

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
242559
积分
130
帖子
88
主题
33
阅读权限
40
注册时间
2016-11-2
最后登录
2022-7-14
10#
发表于 2016-12-15 18:15:38 |只看该作者
高手,能稍微解释一下你的代码思路吗

使用道具 举报

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

bottom

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

GMT+8, 2024-4-25 17:29

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部