自编的模式策略,为什么不能列出全部参数?我以前也编过,都是可以全部显示的啊,我的代码如下:
//------------------------------------------------------------------------
// 简称: EnterD
// 名称: 直接进场1
// 类别: 公式应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params
Enum<String> pTradeSide(["多头进场","空头进场"]); //交易方向
Numeric pTradeVolume(1);//委托数量
Numeric ENTERH(0); //高位进场≥
Numeric ENTERL(0); //低位价格≤
Vars
Global Bool IsStart(False);
Global Numeric StartBar (0); //成交记录
Events
OnBar(ArrayRef<Integer> indexs)
{
If(IsStartBar())
{
IsStart = True;
PlotBool("IsStart ",IsStart, Low);
StartBar=CurrentBar();
}
//========//高位开多
If(pTradeSide=="多头进场" AND ENTERH>0 AND ENTERL==0 )//And MarketPosition<>1 And High>=ENTERH)
{
commentary("高位开多="+TEXT(ENTERH));
IF (CurrentBar()>StartBar AND MarketPosition<>1 And High>=ENTERH)
{
IF (Buy(pTradeVolume,MAX(OPEN,ENTERH)))
AddStrategyFlag(Enum_Strategy_Finished);
}
}
//========//低位开多
If(pTradeSide=="多头进场" AND ENTERH==0 AND ENTERL>0)// And MarketPosition<>1 And LOW<=ENTERL)
{
commentary("低位开多="+TEXT(ENTERL));
IF (CurrentBar()>StartBar AND MarketPosition<>1 And LOW<=ENTERL)
{
IF (Buy(pTradeVolume,MAX(OPEN,ENTERL)));
AddStrategyFlag(Enum_Strategy_Finished);
}
}
//===========//高位开空
If(pTradeSide=="空头进场" AND ENTERH>0 AND ENTERL==0 )//And MarketPosition<>-1 And HIGH>=ENTERH)
{
commentary("高位开空="+TEXT(ENTERH));
IF (CurrentBar()>StartBar AND MarketPosition<>-1 And HIGH>=ENTERH)
{
IF (SellShort(pTradeVolume,MIN(OPEN,ENTERH)))
AddStrategyFlag(Enum_Strategy_Finished);
}
}
//===========//低位开空
If(pTradeSide=="空头进场" AND ENTERH==0 AND ENTERL>0)// And MarketPosition<>-1 And LOW<=ENTERL)
{
commentary("低位开空="+TEXT(ENTERL));
IF (CurrentBar()>StartBar AND MarketPosition<>-1 And LOW<=ENTERL)
{
IF (SellShort(pTradeVolume,MIN(OPEN,ENTERL)))
AddStrategyFlag(Enum_Strategy_Finished);
}
}
/*IF (MarketPosition<>0)
AddStrategyFlag(Enum_Strategy_Finished);*/
commentary("持仓状态="+TEXT(MarketPosition));
commentary("成交价格="+TEXT(EntryPrice));
}
你用的系统模版的参数写法,自己改个名字就可以
明白了,谢谢!!!