文华9能实现跨周期吗

01-19 18:05发布

文华9能实现跨周期吗

文华9能实现跨周期吗
付费偷看设置
发送
9条回答
文华解答
2楼-- · 01-19 19:03
支持的,使用#IMPORT函数就行了

具体请看函数说明
文期王华
3楼-- · 01-19 19:23

Vars
Numeric MinPoint; // 一个最小变动单位,也就是一跳
NumericSeries firstPrice; // 第一次开仓价格
NumericSeries LastPrice; // 最后一次开仓价格
Numeric AddSet(90); // 加仓设置
Numeric SubSet(30); // 减仓设置
Bool FirstEntryCon; // 首次开仓条件
Begin
FirstEntryCon = ...
MinPoint = MinMove*PriceScale;
If(MarketPosition==0)
{
If(FirstEntryCon)
{
firstPrice = Open;
LastPrice = firstPrice;
bk(2,firstPrice);
}
}else If(MarketPosition==1) // 有多仓的情况
{
While(CurrentEntries < 4 && High >= LastPrice + AddSet*MinPoint) // 加仓
{
LastPrice = LastPrice + AddSet*MinPoint;
if(Open > LastPrice) LastPrice = Open;
bk(1,LastPrice);
}
While(CurrentEntries > 0 && Low <= firstPrice - SubSet*MinPoint) // 减仓
{
firstPrice = firstPrice - SubSet*MinPoint;
if(Open < firstPrice) firstPrice = Open;
sp(1,firstPrice);
}
}
为什么这段代码顺势加仓不显示信号的

文华解答
4楼-- · 01-19 19:43
您源码不是WH9的模型,实际并不能用。

如果WH9想加仓编写,需要SETTING字段下,设置ADDTIMES解决。

Setting
AddTimes:5;

不设置一次开仓最多一个开仓指令。
文期王华
5楼-- · 01-19 20:03

Params
Numeric AvgLen(3); //boll均线周期参数
Numeric Disp(16); //boll平移参数
Numeric SDLen(12); //boll标准差周期参数
Numeric SDev(2); //boll通道倍数参数
Vars
Numeric TPrice; //关键价格
NumericSeries AvgVal; //中轨
NumericSeries SDmult; //通道距离
NumericSeries DispTop; //通道高点
NumericSeries DispBottom; //通道低点
Numeric MinPoint; // 一个最小变动单位,也就是一跳
NumericSeries firstPrice; // 第一次开仓价格
NumericSeries LastPrice; // 最后一次开仓价格
Numeric AddSet(30); // 加仓设置
Numeric SubSet(30); // 减仓设置
NumericSeries FirstEntryCon; // 首次开仓条件
NumericSeries FirstEntryCon1; // 首次开仓条件
Numeric N; //下单手数
Numeric SH; //平仓参数
Numeric ZYM; //止盈价位倍数
Numeric ZSM; //止损价位倍数
Numeric NEWP; //最新价
Numeric MINP; //最小变动价位
Numeric RLP,FLP; //涨跌停价
Numeric BIDP,ASKP; //买卖一价
Numeric BAP,SAP; //多空头持仓均价
Numeric BRP,SRP; //多空头可用持仓
Numeric OPFLG; //模型处理标志
Numeric BKDFLG; //买开处理标志
Numeric SKDFLG; //卖开处理标志
Numeric BPDFLG; //买平处理标志
Numeric SPDFLG; //卖平处理标志
Global_Numeric BKID,SKID; //开仓委托
Global_Numeric BPID,SPID; //平仓委托
Global_Numeric BKFLG,SKFLG; //开仓标志
Global_Numeric BPFLG,SPFLG; //平仓标志
Global_Numeric BKM,SKM; //开仓委托手数
Global_Numeric BPM,SPM; //平仓委托手数
Global_Numeric BKP,SKP; //开仓委托价格
Global_Numeric BPP,SPP; //平仓委托价格
Begin
//------------------------信号发出------------------------//
If(1) //信号发出
{
//平移boll通道计算
TPrice = Close; //关键价格
AvgVal = Ma(TPrice,AvgLen);
SDmult = Std(TPrice,SDLen) * SDev;
DispTop = AvgVal[Disp] + SDmult;
DispBottom = AvgVal[Disp] - SDmult;
FirstEntryCon =High >= DispTop[1];
FirstEntryCon1 =Low <= DispBottom[1];
//系统入场
If(MarketPosition == 0)
{
If(FirstEntryCon)
{
firstPrice = Open;
LastPrice = firstPrice;
bk(1,max(open,firstPrice));
}else If(MarketPosition==1) // 有多仓的情况
{
While(CurrentEntries < 4 && High >= LastPrice + AddSet*MinPoint) // 加仓
{
LastPrice = LastPrice + AddSet*MinPoint;
if(Open > LastPrice) LastPrice = Open;
bk(1,LastPrice);
}
}
// If(Low <= DispBottom[1])
// {
// SK(DefaultVol,Min(Open,DispBottom[1]));
// }
// }
//系统出场
If(MarketPosition == 1 && BarsSinceEntry > 0)
{
If(Low <= DispBottom[1])
{
SP(DefaultVol,Min(Open,DispBottom[1]));
}
}
// If(MarketPosition == -1 && BarsSinceEntry > 0)
// {
// If(High >= DispTop[1])
// {
// BP(DefaultVol,Max(Open,DispTop[1]));
// }
//}
}
//------------------------处理开启------------------------//
If(A_IsExchangeOpen() == 1) //如果是开盘状态
{
If(BarStatus() == 2) //如果不带入历史值
{
If(RunStart() == 1) //如果已初始化成功
{
OPFLG = 1; //开启模型处理
}
}
}
//------------------------变量赋值------------------------//
If(OPFLG == 1) //变量赋值
{
N = 1; //下单手数
ZYM = 3; //止盈价位倍数
ZSM = 2; //止损价位倍数
NEWP = Price("New"); //最新价
BIDP = Price("Bid1"); //买一价
ASKP = Price("Ask1"); //卖一价
RLP = Price("RiseLimit"); //涨停价
FLP = Price("FallLimit"); //跌停价
MINP = Price("MinPrice"); //最小变动价位
BAP = F_BuyAvgPrice(); //多头持仓均价
SAP = F_SellAvgPrice(); //空头持仓均价
BRP = F_BuyRemainPosition(); //多头可用持仓
SRP = F_SellRemainPosition(); //空头可用持仓
BRP = Min(BRP,A_BuyRemainPosition()); //多头可用持仓
SRP = Min(SRP,A_SellRemainPosition()); //空头可用持仓
If(A_IsSHCode() == 1) //如果是上期所合约
{
SH = Enum_ExitToday; //平仓参数
}
Else //如果非上期所合约
{
SH = Enum_Exit; //平仓参数
}
}

End

这个加仓怎么改?

文华解答
6楼-- · 01-19 20:23
最上面添加:

Setting
AddTimes:5;

即可

添加之后k线满足条件就能一直开仓,一次交易最多开仓5次。
文期王华
7楼-- · 01-19 20:44
达不到我想要的效果。盈利30跳 情况下加仓怎样改才能让他盈利30跳情况下加仓最多加4次

相关问答