显示历史交易订单的开仓平仓点

#property link      "http://www.haoib.com"

#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
   
   int i,hstTotal=OrdersHistoryTotal(); 
/*
   for(i=0;i<283;i++)
   {
   ObjectCreate("arrow"+i, OBJ_ARROW,0,Time[i],Low[i]);
   ObjectSet("arrow"+i,OBJPROP_ARROWCODE,i);
   ObjectSet("arrow1",OBJPROP_COLOR,Green);
   
   }
*/
  for(i=0;i<hstTotal;i++)
  {
      OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
      if(Symbol()==OrderSymbol() && OrderType()<=OP_SELL)
      {
         int tk=OrderTicket();
         if(ObjectFind("aopen"+tk)==-1)
         {
            ObjectCreate("aopen"+tk,OBJ_ARROW,0,OrderOpenTime(),OrderOpenPrice());
            ObjectSet("aopen"+tk,OBJPROP_ARROWCODE,1);
            if(OrderType()==OP_BUY) ObjectSet("aopen"+tk,OBJPROP_COLOR,Green);
            if(OrderType()==OP_SELL) ObjectSet("aopen"+tk,OBJPROP_COLOR,Red);
         }
         if(ObjectFind("aclose"+tk)==-1)
         {
            ObjectCreate("aclose"+tk,OBJ_ARROW,0,OrderCloseTime(),OrderClosePrice());
            ObjectSet("aclose"+tk,OBJPROP_ARROWCODE,3);
            ObjectSet("aclose"+tk,OBJPROP_COLOR,Goldenrod);
         }
         if(ObjectFind("#"+tk)==-1)
         {
            if(ObjectFind("##"+tk)!=-1)ObjectDelete( "##"+tk) ;
            ObjectCreate("#"+tk,OBJ_TREND,0,OrderOpenTime(),OrderOpenPrice(),OrderCloseTime(),OrderClosePrice());
            ObjectSet("#"+tk,OBJPROP_STYLE,STYLE_DOT);
            ObjectSet("#"+tk,OBJPROP_RAY,0);
            if(OrderType()==OP_BUY) ObjectSet("#"+tk,OBJPROP_COLOR,Green);
            if(OrderType()==OP_SELL) ObjectSet("#"+tk,OBJPROP_COLOR,Red);
         }
         
      }
      
      if(Symbol()==OrderSymbol() && OrderType()>OP_SELL)
      {
         tk=OrderTicket();
         if(ObjectFind("aopen"+tk)==-1)
         {
            ObjectCreate("aopen"+tk,OBJ_ARROW,0,OrderOpenTime(),OrderOpenPrice());
            
            if(OrderType()<=OP_BUYSTOP) ObjectSet("aopen"+tk,OBJPROP_ARROWCODE,217);
            else                        ObjectSet("aopen"+tk,OBJPROP_ARROWCODE,218);
         }
         if(ObjectFind("aclose"+tk)==-1)
         {
            ObjectCreate("aclose"+tk,OBJ_ARROW,0,OrderCloseTime(),OrderOpenPrice());
            ObjectSet("aclose"+tk,OBJPROP_ARROWCODE,251);
         }
         if(ObjectFind("#"+tk)==-1)
         {

            ObjectCreate("#"+tk,OBJ_TREND,0,OrderOpenTime(),OrderOpenPrice(),OrderCloseTime(),OrderOpenPrice());
            ObjectSet("#"+tk,OBJPROP_STYLE,STYLE_DOT);
            ObjectSet("#"+tk,OBJPROP_RAY,0);
            ObjectSet("#"+tk,OBJPROP_COLOR,White);

         }
         
      }

  }


   int total=OrdersTotal();
   for(i=0;i<total;i++)
   {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(Symbol()==OrderSymbol() && OrderType()<=OP_SELL)
      {
         tk=OrderTicket();
         if(ObjectFind("aopen"+tk)==-1)
         {
            ObjectCreate("aopen"+tk,OBJ_ARROW,0,OrderOpenTime(),OrderOpenPrice());
            ObjectSet("aopen"+tk,OBJPROP_ARROWCODE,1);
            if(OrderType()==OP_BUY) ObjectSet("aopen"+tk,OBJPROP_COLOR,Green);
            if(OrderType()==OP_SELL) ObjectSet("aopen"+tk,OBJPROP_COLOR,Red);
         }
         if(ObjectFind("##"+tk)==-1)
         {
            ObjectCreate("##"+tk,OBJ_TREND,0,OrderOpenTime(),OrderOpenPrice(),Time[0],Bid);
            ObjectSet("##"+tk,OBJPROP_STYLE,STYLE_DOT);
            ObjectSet("##"+tk,OBJPROP_RAY,0);
         }
         else
         {
            ObjectSet("##"+tk,OBJPROP_TIME2,Time[0]);
            ObjectSet("##"+tk,OBJPROP_PRICE2,Bid);
            if(OrderType()==OP_BUY) 
            {
               ObjectSet("##"+tk,OBJPROP_COLOR,Green);
               ObjectSet("##"+tk,OBJPROP_PRICE2,Bid);
               
            }
            if(OrderType()==OP_SELL) 
            {
               ObjectSet("##"+tk,OBJPROP_COLOR,Red);
               ObjectSet("##"+tk,OBJPROP_PRICE2,Ask);
               
            }
         }
      }

      if(Symbol()==OrderSymbol() && OrderType()>OP_SELL)
      {
         tk=OrderTicket();
         if(ObjectFind("aopen"+tk)==-1)
         {
            ObjectCreate("aopen"+tk,OBJ_ARROW,0,OrderOpenTime(),OrderOpenPrice());
            if(OrderType()<=OP_BUYSTOP) ObjectSet("aopen"+tk,OBJPROP_ARROWCODE,217);
            else                        ObjectSet("aopen"+tk,OBJPROP_ARROWCODE,218);
         }
         
      }
   }
   


//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+

 

转载于:https://www.cnblogs.com/wzlmzy/p/4546044.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值