开拓者股指3分钟日内,支撑阻力位突破交易策略源码[开拓者公式]
- 咨询内容:
//-----------------------------------------------------------------------
// 简称: 50050402
// 名称: 支撑阻力位突破
// 类别: 公式应用
// 类型: 用户应用
//------------------------------------------------------------------------
Params
Numeric lostmove(0.20);
Numeric N(0.70);
Vars
Numeric NetChg(0);
Numeric TotChg(0);
NumericSeries EffRatio(0);
NumericSeries AMAValue; //定义效率指数
NumericSeries HighVanlue(0); //定义高点阻力位;
NumericSeries LowVanlue(0); //定义低点支撑位;
NumericSeries HigherVanlue(0); //较高高点;
NumericSeries LowerVanlue(0); //较低低点;
Numeric ATR;
Begin
//计算ATR
ATR = AvgTrueRange(20);
//定义AMA(自适应曲线)
if(CurrentBar == 0)
{
AMAValue = close;
}Else
{
NetChg = Abs( close - close[10] );
TotChg = Summation( Abs( close - close[1] ), 10);
EffRatio = IIF(TotChg > 0, NetChg / TotChg, 0);
}
//三点清零
If(Time==0.1515)
{
HighVanlue=0;
LowVanlue=0;
}
//定义阻力支撑位
If(Time>0.0930)
{
If(high[3]>high[4]&&High[3]>High[5]&&high[3]>high[2] &&high[3]>high[1])
{
HighVanlue=high[3];
}
If(low[3]<low[4]&&Low[3]<Low[5] &&low[3]<low[2] &&low[3]<low[1])
{
LowVanlue=low[3];
}
}Else
{
HighVanlue=Highest(High,BarsSinceToday);
LowVanlue=Lowest(Low,BarsSinceToday);
}
//比较较高的高点,较低的低点;
HigherVanlue = Max(HighVanlue,HighVanlue[1]);
LowerVanlue = Min(LowVanlue,LowVanlue[1]);
//平仓
//盘中6000止损
If(MarketPosition==1&&close<EntryPrice-20)
{
Sell(1,EntryPrice-20);
PlotString("Vol","金额止损",Low,Red);
}
If(MarketPosition==-1&&Close>EntryPrice+20)
{
BuyToCover(1,EntryPrice+20);
PlotString("Vol","金额止损",Low,Red);
}
//顺势平仓
//平多单
If(MarketPosition==1&&Low<LowVanlue-lostmove)
{
if(Open<LowVanlue-lostmove)
{
Sell(1,Open-lostmove);
PlotString("Vol","破低",Low,Red);
}Else
{
Sell(1,LowVanlue-lostmove);
PlotString("Vol","破低",Low,Red);
}
}
//平空单
If(MarketPosition==-1&&High>HighVanlue+lostmove)
{
If(Open>HighVanlue+lostmove)
{
BuyToCover(1,Open+lostmove);
PlotString("Vol","破高",Low,Red);
}Else
{
BuyToCover(1,HighVanlue+lostmove);
PlotString("Vol","破高",Low,Red);
}
}
//回撤止损
IF(MarketPosition==1&&Close<Highest(High,BarsSinceEntry)-4*ATR)
{
Sell(1,Close);
PlotString("Vol","ATR",Low,Red);
}
If(MarketPosition==-1&&Close>Lowest(Low,BarsSinceEntry)+4*ATR)
{
BuyToCover(1,Close);
PlotString("Vol","ATR",Low,Red);
}
//开仓
//顺势突破开仓
If(0.0930<Time&&Time<0.1430)
{
If(MarketPosition!=1&&Close>HigherVanlue+lostmove&&EffRatio>N)
{
Buy(1,Close);
}
If(MarketPosition!=-1&&Close<LowerVanlue-lostmove&&EffRatio>N)
{
SellShort(1,Close);
}
}
//收盘平仓
If(MarketPosition==1&&Time>=0.1509)
{
Sell(1,Close);
PlotString("Vol","收盘平仓",Low,Red);
}
If(MarketPosition==-1&&Time>=0.1509)
{
BuyToCover(1,Close);
PlotString("Vol","收盘平仓",Low,Red);
}
End
//------------------------------------------------------------------------
// 编译版本 GS2010.12.08
// 用户版本 2012/02/08 14:07
// 版权所有 lzy990100887
// 更改声明 TradeBlazer Software保留对TradeBlazer平台
// 每一版本的TrabeBlazer公式修改和重写的权利
//------------------------------------------------------------------------
- 网友点评: 虽然错误很多
但思路还是不错的
加工了一个绝大部分品种通用的模型
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 262069696 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容