常见问题解决
 
 
1、过滤模型、非过滤模型、公式条件单的运行规则是什么?
2、模组和模型的区别?
3、如何导入模型?
4、如何进行多品种的程序化交易?
5、软件中能加载多少个模组?
6、运行程序化的电脑需要什么样的配置?
7、模组运行状态列表中的“复核”是什么意思?
8、程序化运行过程中能否暂停?
9、如何取消主窗口k线图上信号、信号连线显示?
10、程序化开的仓,手动平掉可以吗,程序化再出平仓信号,会有什么反应?
11、程序化启动止损平仓后,模型再出平仓信号会平掉交易账户其他持仓么?
12、如何实现一根K线多个信号?
13、模型可以引用多周期的指标值吗?
14、如何在模型中插入声音提示?
15、如何增加提示音类型?
16、运行模组的监控k线图中显示的信号和主图上显示的信号怎么不一样?
17、"K线走完"的信号执行方式,当天最后一根K线上产生信号何时委托?
18、模组中的浮动盈亏为什么与下单界面中的实际的盈亏不一样?
19、打开运行模组时,什么情况下会弹出"模组手动初始化"?
20、模组的监控k线图中如何显示指标线?
21、模组初始化界面默认显示的“模组可用资金”怎么得来的,是否需要修改?
22、程序化运行日志中的信号出现价和信号执行价、滑点是什么意思?
23、主力合约换月之后程序化加载的合约能否自动换月?
24、模型给他人使用,又不想他人看到模型源码,即如何进行加密销售?
25、如何将模型加载到主窗口k线图上?
26、模型运行过程中,如果想人工进行手动干预,如何操作能够不影响模型的运行?
27、模型源码中有很多开仓和平仓条件,如果希望某个条件开的仓用特定的条件平,该如何操作?
28、赢智规范用语


 
 

1、过滤模型、非过滤模型、公式条件单的运行规则是什么?
过滤模型运行规则:http://www.wenhua.com.cn/popwin/guolvmx.htm
非过滤模型运行规则:http://www.wenhua.com.cn/popwin/feiguolvmx.htm
公式条件单运行规则:http://www.wenhua.com.cn/popwin/tiaojiandan-sm.htm
也可在运行模组的下方的“模组的运行规则说明”处直接打开连接,如下图所示:


 
 

 

 
 

2、模组和模型的区别?
答:模型:文华软件提到的模型是指在编辑平台上使用麦语言编写的包含变量、交易条件、交易指令等的源码。
    模组:文华软件中提到的模组是指将模型、合约、周期k线、委托手数、委托方式等组合在一起能够实现程序化自动下单的模块。

 

 
 

3、如何导入模型?

答:以不同方式备份的模型,导入方式也不同;

(1)模型是以具体名字命名的压缩文件

    如果您需要导入的模型是一个以具体名字命名的压缩文件(如下图所示),需要在麦语言模型开发平台里导入:

导入方法:

(2)模型是名为“赢智ExportImport”的压缩文件

    如果您需要导入的模型是一个名为“赢智ExportImport.zip ”的压缩文件(如下图所示),需要从系统工具菜单下导入:

导入方法:

(3)模型是纯源码形式的

    如果您需要导入的模型是纯源码形式的(如下图所示),可以直接将模型复制粘贴到麦语言开发平台的编辑器里再保存:

导入方法:

点击链接,查看导入纯源码形式模型的方法:http://www.wenhua.com.cn/guide/wh8/view9_1.html

 

 
 

4、如何进行多品种的程序化交易?
答:如下图,点运行模组左上方的模组—>新建,可以在运行模组中多次建立新模组。

 
 

 

 
  5、软件中能加载多少个模组?
答:软件中共有三个运行模组,每个运行模组功能都是一样的,每个运行模组可以加载36个模组。

6、运行程序化的电脑需要什么样的配置?
答:运行赢智(wh8)需要2G以上内存,对电脑的其他硬件没有要求。在软件运行时,点击下方的“网
    络状况指示按钮”在弹出的性能查看器中观察cpu和内存,不超过建议值即可(如下图所示)。如
    果经常超过建议值,建议提高电脑硬件性能或减少模组加载的数量。

 
   
  7、模组运行状态列表中的“复核”是什么意思?
答:复核是指模型信号是否是固定的,如下图所示,如果“复核”位置显示为“是”,那么信号就是
    固定的。为“否”信号不固定,可能会信号消失。
 
   
 

8、程序化运行过程中能否暂停?
答:点击下图红框位置的“切断账号”按钮,切断与交易账号的连接,程序化继续出信号,但不委
    托。希望程序化信号能发出委托时点击绿框的“连接账号”按钮即可。

 
   
 

9、如何取消主窗口k线图上信号、信号连线显示?
答:如下图所示,在主窗口k线图上单击鼠标右键—>设置技术指标,取消勾选下图红框位置选项。

 

 
 

 

 
  10、程序化开的仓,手动平掉可以吗,程序化再出平仓信号,会有什么反应?
答:无论以什么形式开的仓,都可以在交易界面平掉,注意,是交易界面,不是程序化里的“主观
    干预”。
    在交易界面进行平仓:如果平掉的是之前手动开的仓,对模组没有影响。如果平掉的是程序化的
    开仓,那么当程序化再出现平仓信号时,会先核实实际持仓,这时候核实的结果应该是实际持仓
    少于程序化默认委托手数,那么,实际有几手平几手,没有持仓,不委托。当程序化再出现开仓
    信号时,正常开仓。

11、在加载模型的第三步中启用了止损止盈,止损平仓后,模型满足了平仓条件,这时程序化会如何操作;如果出现平仓信号当时,交易账户中有手动开的持仓,持仓会被平掉吗?
答:止损平仓只委托,不会在k线图上产生信号,但模组是知道仓位已经平掉了,所以不管交易账户
    中是否有持仓,等到模型出现平仓信号,都只出信号不会委托。程序化继续正常运行,等之后出
    现开仓信号,正常发开仓委托。

12、如何可以实现一根k线多个信号?如,一根k线上出现了BK信号后,再同一根k线上再满足卖平条件时又能出现SP的信号。
答:条件1:加载模型的信号执行方式选择“……,不进行信号复核”或“下单组件接管所有原
    信号”,不能选择“……,k线走完进行信号复核”。
    条件2:源码中没有MONO_SIGNAL、限制信号函数;
    条件3:如果源码中有SETSIGMAXNUM(N) 设置一根K线最大信号个数的函数,参数N值大于1。

 
 

13、模型可以取到其他合约或其他周期的指标值吗?如模型加载在if1311合约的1分钟周期上但需要取if指数在3分钟周期的指标数值。
答:可以通过#IMPORT跨周期函数来实现,如下图所示,在模型开发平台中点击【插入】—>插入函
    数,在“历史数据引用”里找到#IMPORT函数,具体使用方法请参考“插入函数”里的函数说明。

 
 



 
 

如下面案例所示,是如何建立跨周期模型:

案例:在1分钟周期上引用30分钟周期的MA5和MA10指标

建立好的跨周期模型加载到1分钟周期上,AA指标不需要加载,只加载跨周期模型即可。

 

 
 

14、如何在模型中插入声音提示?
答:在模型源码中加入声音函数PLAYSOUND(条件满足时,播放指定声音)即可。如下图所示方法,可
    找到声音函数及其用法。

 
 



 
 

15、如何增加提示音类型?
答:(1)用软件录制声音。
    ①调出录音软件
     如下图所示,点击电脑左下角的开始->程序->附件->娱乐->录音机,调出录音机。

    

    ②开始录音
     下图为调出的录音机,点击图中红框按钮开始和暂停录音。

                           

    ③保存录音
     完成录音后,按下图所示方法将录制的声音保存。下图将文件保存在桌面,名字为123。

                

(2)在软件中调用录制的声音文件
  
回到赢智软件的“模型开发平台”,打开“设置声音文件”,按下图所示方法调用桌面的“123”声音文件,再使用声音函数时即可播放自己的声音文件了。



 
 

16、运行模组的监控k线图中显示的信号和主图上显示的信号怎么不一样?
答:主图上的信号是按照k线走完的方式计算的;运行模组监控k线图中的信号是按照您所选的信号执
    行方式计算的,如您选择出信号立即下单,不进行信号符合,那么在k线形成过程中满足过条件就会
    出现信号,不管之后是否一直满足信号都不会消失,而主图上如果不满足条件了,信号就消失,
    只有在k线走完时还满足,信号才存在,所以与主图上的信号可能会有差别。

 
 

17、运行模组的信号执行方式选择的是“k线走完确认信号后下单”在最后一根k线上产生了信号,第二天开盘会发委托吗?
答:如果您在开盘前就打开了模组,会发委托。如果您在开盘后再打开模组,已经过了开盘时刻,就
    不会在委托了。
    另,如果设置了“休市前最后一根判断k线走完提前n秒然后不再下单”(如下图所示),那么会在
    当天的收盘前就发委托了,第二天就不会委托了。

 
 

 
 

18、模组中的浮动盈亏为什么与下单界面中的实际的盈亏不一样
答:模组中的浮动盈亏如果是手动初始化,软件根据初始化中设置的价格作为开仓均价计算浮动盈
    亏;如果是自动初始化,软件根据前面信号的指令价作为开仓均价计算浮动盈亏。而下单界面中
    的逐笔浮盈和盯市浮盈是与开仓均价(当老仓是盯市浮盈与昨结算)比较盈亏。
    由于计算盈亏时比较的基准价的取值不同,所以我们看到的模组浮动盈亏和下单窗口不一样。
    如果想让模组的浮动盈亏和下单界面中的实际的盈亏一致怎么做?
    可以在监控k线图上点击鼠标右键—>模组重新初始化,将价格设置成与下单界面的开仓均价一
    样,这样计算出来的盈亏就一致了。

 
 

19、打开一/二/三页运行模组时,以前建好的模组有时会弹出“模组手动初始化”的确认框,有时又不会弹出,有何规律
答:以下5种情况都满足时可以自动初始化,否则弹出初始化对话框
   (1)退出时模组实际持仓等于模组理论持仓(模组实际持仓为程序化列表中显示的持仓,理论持
    仓为K线十字光标中显示的持仓)。
   (2)最后信号是BK、BPK ,退出时模组实际多头持仓大于0,退出时模组多头持仓小于等于下单界
    面多头持仓。
   (3)最后信号是SK、SPK ,退出时模组实际空头持仓大于0,退出时模组空头持仓小于等于下单界
    面空头持仓。
   (4)最后信号是BP、SP、CLOSEOUT, 模组多头持仓等于0,模组空头持仓等于0。
   (5)含有资金管理函数的模组退出时的资金小于等于实际下单界面中的可用资金。

 
 

20、模组的监控k线图中如何显示指标线
答:如下图,首先,在模型编写时用冒号(:)声明变量(可以显示线),不要用冒号等号(:=)定
    义的变量(不能显示线)。
    然后,模型加载后,在监控k线图上点击鼠标右键—>设置原型指标线,在弹出的窗口中将希望显
    示的指标线选到右侧框,点击【确定】即可。如下图所示:

 
 

 
 

21、模组初始化界面默认显示的“模组可用资金”怎么得来的,是否需要修改
答:如果首次加载模型,模组手动初始化界面默认的“模组可用资金”(如下图所示),是加载模型
    第五步设置的模组起始资金在加载的k线图上运行后的结果值,如,第五步的“模组起始资金”设
    置为10万,加载的k线数据从13年1月1日开始,那么“模组可用资金”的默认显示值就是10万元资
    金从13年1月1日运行到加载时间为止的可用资金值。
    如果是直接打开运行模组或者通过“模组—>打开”的方式弹出的“模组手动初始化”界面,默
    认的“模组可用资金”是上次退出时的模组可用资金;但如果您有一段时间没有打开模组了,没
    打开的这段时间的k线也要参与可用资金的计算(按您选的信号执行方式计算成交价),如,上次
    退出时的模组可用资金为50万,1个星期后再次打开该模组时默认显示的“模组可用资金”是50万
    资金在这一个星期行情中运行后的可用资金值。
   “模组可用资金”的值修改后,模型就按照赋予的可用资金继续运行了,是否需要修改可根据您的
    情况而定。

 
 

 
 

22、程序化运行日志中的信号出现价和信号执行价、滑点是什么意思

                   

 
 

答:如上图红框所示,
    信号出现价:模型条件满足时的最新价
    信号执行价:信号委托时的最新价
    滑点:成交价与信号执行价之间的差值
    买入滑点=成交均价-信号执行价位
    卖出滑点=信号执行价位-成交均价

 
 

23、主力合约换月之后程序化加载的合约能否自动换月
答:模组中的交易合约不能自动换月,主力换月时需要您重新加载模型。
    但有一种情况可以不用重新加载,如果模型加载在指数合约,交易具体的合约,则可以在“加载
    参数”中的【另外指定】处直接换成新主力合约(如下图所示),那么模型的信号计算还用指数
    合约,当出现信号委托时会对修改后的新合约下单。但建议在没有旧主力持仓时载修改此处,否
    则当出现平仓信号后,会对新主力发平仓委托,而旧主力持仓程序化无法管理。

 
 

 
 

24、模型给他人使用,又不想他人看到模型源码,即如何进行加密销售
答:点击软件上方的程序化—>麦语言模型开发平台,在弹出的窗口中点击设置—>模型加密输出即可
    如下图所示。

 
 
 
 


25、如何将模型加载到主窗口k线图上?

答:点击软件上方菜单的【系统工具】—>指标管理器,建立好模型后点击【加载】按钮即可,如下图
    所示:

 
 



 
 

26、模型运行过程中,如果想人工进行手动干预,如何操作能够不影响模型的运行?
答:在程序化运行过程中,如果需要进行手动干预,例如,希望干预加仓并且让程序化记住这次加仓动
    作,在下次出现平仓时能够将该仓位一起平掉;或者希望提前将程序化开的仓平掉,并让模组知道
    自己的仓位已经被平,在出现平仓信号时不再委托。就可以使用模组运行界面的“主观干预”功能
     注主观干预会改变模组持仓,但不会在k线图中显示信号。
   程序化界面的主观干预和下单界面的手动下单有何区别:主观干预是作用于模型的持仓的。相
    应的操作会造成模组持仓的增减,而在交易界面的干预不作用于模型的持仓,虽然实际持仓增减
    了 ,但是对模组持仓不产生影响。
    所以主观干预的优势在于,如果平仓语句写了SP(BKVOL)指令,使用“主观干预”开的仓在模型出现
    平仓信号时就能全平,但在交易界面手动新开的仓,程序化出现平仓信号时就没法全部平掉了。
   操作方法:如下图所示,点击【主观干预】按钮,在弹出的下单框中进行主观干预。

 
 


 
 


    程序化的主动干预规则:
   (1)有挂单不能进行手动干预
   (2)有未处理完的操作不能进行手动干预
   (3)有多头持仓不能干预卖开
   (4)有空头持仓不能干预买开
   (5)没有多头持仓不能干预卖平
   (6)没有空头持仓不能干预买平
    过滤模型主观干预规则:http://www.wenhua.com.cn/popwin/guolvmx.htm
    非过滤模型主观干预规则:http://www.wenhua.com.cn/popwin/feiguolvmx.htm

 
 

27、模型源码中有很多开仓和平仓条件,如果希望某个条件开的仓用特定的条件平,该如何操作?
答:可以在编写模型的交易指令时使用分组指令,分组指令可以对开平条件分成n个组,某个组的条件
    开的仓位只有某个组对应的平仓条件条件才能平,其他组的平仓条件满足不会出信号,也就不会
    委托。
过滤模型:不同的开仓条件如果想以不同的平仓策略进行平仓,可以利用指令分组来进
           行控制。如下图 :

 
 


 
 

非过滤模型:入场策略和加仓策略可能有所不同,相应的止损及出场策略的使用亦不相同,这时可以采
             用指令分组的方式实现。如下图:

 
 

 
 

分组指令编写、运行机制:
过滤模型:
如果上一根K线信号是组A发出的开仓信号(bk sk bpk spk) 当前K线只能是组A的平仓信号
如果上一根K线信号是组A发出的平仓信号(bp sp) 当前K线可以是任意组的开仓信号(以信号出现的顺序取第一个开仓信号)。
注:不分组的平仓条件只能平不分组的开仓条件
非过滤模型:
如果上一个信号为组A发出的开仓信号,则下一信号必须为组A的加仓信号或平仓信号
如果上一个信号为组A的平仓信号并且组A持仓为0,下一信号可以为任意组的开仓信号;
如果A组持仓大于0,则必须为A组的开仓信号或平仓信号
注:不分组的平仓条件只能平不分组的开仓条件

更多分组指令的编写方法,可以参见模型开发平台中“插入指令”中的说明,如下图所示。

 

 
 



 
 

28、赢智规范用语

(1)软件左侧,显示软件后台运行程序的地方为“工作台”。

 
 

 
 

(2)下图为“隐藏按钮”。

   

 
 

 
 

(3)如下图所示,红框处为“菜单”。

          

 
 

(4)如下图所示,红框处为“工具条”。

          

 
 

(5)软件中,点击之后会切换到对应内容的部分为“选项卡”,如下图红框所示。

 
 

 
 

 
 

 
  (6)下图红框分别为“模型编辑窗口”和“模型信息提示窗口”。

 
 

 
  (7)如下图所示,红框处为“交易窗口树形选项”。

 
 

 
  (8)报价列表回车进入的K线界面为"系统K线图"。