重仓提示指标,超过所设置的杠杆,会弹警告

楼主  收藏   举报   帖子创建时间:  2019-05-05 13:27 回复:0 关注量:317
在此无私献出我写的下单仓位提示,希望能给大家有帮助。如有好的建议,可以给我站内信。

     在我们人工下单的过程中,有时我们并不知道我们下的单是否超过了我们可以承受的仓压。如果重仓,往往会很容易爆仓。所以在下单的时候,若计算机能给我们一个提示是否重仓,那就很好的给出相应的风险!

程序参数及用法说明如下。
1,maxlevel是设置放大最大杠杆,默认为100倍
2,bonus 是针对有些平台的赠金。除掉赠金,就是自己的净值。默认没有赠金。
用法说明 :
     程序的提示,是根据用户净值,然后依据你所设置的杠杆比例,检查所下单大小来来进行提示。
   特别注意:这里下单指的是:所有持单单子,不区分多空单!对于所有锁单提示无效!
示例:
如帐户资金为100美元,设置杠杆为100,那么可以下0.1手,如果下单超过0.1手,那么指标就会提示!平仓**手。当你平掉了**手之后 ,指标就不会再提示!这样就保证了,你下的单,只使用100的杠杆。
    代码如下:
#property copyright "Eysen"
#property link      "2013"

#property indicator_chart_window

extern double    maxlevel=100.0;
extern double    bonus=0;
int init()
  {
   return(0);
  }
int deinit()
  {
   return(0);
  }
int start()
  {
   int    counted_bars=IndicatorCounted();
  double lots=0,maxlots,s;

    for(int a=0;a<=OrdersTotal();a++)
     if(OrderSelect(a,SELECT_BY_POS,MODE_TRADES)==true)
      if(OrderType()==OP_BUY || OrderType()==OP_SELL)
       lots+=OrderLots();                             //计算已经下单的手数
    maxlots=(AccountBalance()-bonus)*maxlevel/100000; //计算最大可以下单数

    if(lots>maxlots)
    {
     s=lots-maxlots;
     alert("最多只能下"+maxlots+"手单子,请平仓"+s+"手");   
     }
   return(0);
  }
ex4文件见附件。最后说明,这是一个指标,所以需要放置在……expertsindicators文件夹里面
打赏