发一个交易系统,大家继续完善 - TradeBlazer公式 [开拓者 TB]
作者:
开拓者 TB 来源:
cxh99.com 发布时间:2012年06月01日 点击数:
【
收藏到本网的会员中心】
- 咨询内容:
本帖最后由 zbh0912 于 2012-4-20 14:16 编辑
//------------------------------------------------------------------------
// 简称: CS
// 名称: 优化
// 类别: 公式应用
// 类型: 用户应用
// 输出:
//------------------------------------------------------------------------
Params
Numeric Length(10);
Numeric NumATRs(1);
Numeric profipoint(200);
Numeric trailingstop(0.3);
Vars
NumericSeries TPrice;
NumericSeries AvgValue;
NumericSeries ShiftValue;
Numeric UpperBand;
Numeric LowerBand;
Numeric MyEntryPrice;
Numeric MyExitPrice;
NumericSeries HighestAfterEntry;
NumericSeries LowestAfterEntry;
Begin
If(BarsSinceentry == 0)
{
HighestAfterEntry = Close;
LowestAfterEntry = Close;
If(MarketPosition <> 0)
{
HighestAfterEntry = Max(HighestAfterEntry,AvgEntryPrice);
LowestAfterEntry = Min(LowestAfterEntry,AvgEntryPrice);
}
}
else
{
HighestAfterEntry = Max(HighestAfterEntry,High);
LowestAfterEntry = Min(LowestAfterEntry,Low);
}
Commentary("HighestAfterEntry="+Text(HighestAfterEntry));
Commentary("LowestAfterEntry="+Text(LowestAfterEntry));
//MinPoint = MinMove*PriceScale;
MyEntryPrice = AvgEntryPrice;
TPrice = (High[1]+Low[1]+Close[1])/3;
AvgValue = AverageFC(TPrice,Length);
ShiftValue = NumATRs*AvgTrueRange(Length);
UpperBand = AvgValue + ShiftValue[1];
LowerBand = AvgValue - ShiftValue[1];
PlotNumeric("UpperBand",UpperBand);
PlotNumeric("LowerBand",LowerBand);
PlotNumeric("MidLine",AvgValue);
If(MarketPosition==0)
{
If(High >= UpperBand)
{
MyEntryPrice = UpperBand;
If(Open > MyEntryPrice) MyEntryPrice = Open;
Buy(1,MyEntryPrice);
}
If(Low <= LowerBand)
{
MyEntryPrice = LowerBand;
If(Open < MyEntryPrice) MyEntryPrice = Open;
SellShort(1,MyEntryPrice);
}
}
If(MarketPosition==1)
{
If(Close[1]<AvgValue[1])
{
MyExitPrice=Open;
Sell(0,MyExitPrice);
}
Else if(HighestAfterEntry[1]>=myEntryPrice+profipoint*MinMove*PriceScale)
{
If(Low<=HighestAfterEntry[1]-trailingstop*(HighestAfterEntry[1]-myEntryPrice))
{
MyExitPrice=HighestAfterEntry[1]-trailingstop*(HighestAfterEntry[1]-myEntryPrice);
MyExitPrice=IntPart(MyExitPrice/MinMove*PriceScale)*MinMove*PriceScale;
if(Open<MyExitPrice) MyExitPrice=Open;
Sell(0,MyExitPrice);
}
}
}
Else if(MarketPosition==-1)
{
if(Close[1]>AvgValue[1])
{
MyExitPrice=Open;
BuyToCover(0,MyExitPrice);
}
Else if(LowestAfterEntry[1]<=AvgEntryPrice-profipoint*MinMove*PriceScale)
{
If(High>=LowestAfterEntry[1]+trailingstop*(myEntryPrice-LowestAfterEntry[1]))
{
MyExitPrice=LowestAfterEntry[1]+trailingstop*(myEntryPrice-LowestAfterEntry[1]);
MyExitPrice=IntPart(MyExitPrice/MinMove*PriceScale)*MinMove*PriceScale;
if(Open>MyExitPrice) MyExitPrice=Open;
BuyToCover(0,MyExitPrice);
}
}
}
End
//------------------------------------------------------------------------
// 编译版本 GS2010.12.08
// 用户版本 2012/04/17 13:22
// 版权所有 zbh0912
// 更改声明 TradeBlazer Software保留对TradeBlazer平台
// 每一版本的TrabeBlazer公式修改和重写的权利
//------------------------------------------------------------------------
- TB技术人员:
请问LZ,这个模型是肯特纳通道系统么?
- TB客服:
楼主的系统是在什么时间周期上的啊,5min测试是负的,日线和30分钟还可以,但是也不是特别好。
下面是三十分钟,小时和日线的测试图。是交易成本考虑进去的结果。
cv是英语什么的简称?
- 网友回复:
这群不活跃呀:):)
- 网友回复:
200个点止赢 应该不是短线
|