任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 375

 
okidoki543:
如果有人想帮助我(见上文),我愿意接受合作。
在商业基础上,没有问题,会有很多人排队想帮忙。否则...自己开始写作,帮助就会到来。
 
Ekburg:

用OrderStopLoss()代替sl。


没用的...

void VirtualTral(int Dist_Tral,int Start_Tral,int Magic,int SL)
{

double dist=Dist_Tral;
double start=Start_Tral;
double priceopen=OrderOpenPrice();
double sl=OrderStopLoss();
 
if(OrdersTotal()<=0)
ObjectDelete("Stop"); 

int i, k=OrdersTotal();

  for (i=k-1; i>=0; i--) 
   {
    if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
     {  

       if ((NormalizeDouble(priceopen+start*Point,Digits)<=Bid)&&(NormalizeDouble(Bid-sl*Point,Digits)>NormalizeDouble(dist*Point,Digits)))
         {                    
                sl=NormalizeDouble(Bid-dist*Point,Digits);
                Print(+sl);
                ObjectCreate("Stop",OBJ_HLINE,0,D'2013.02.20 12:30',sl);                                                         
                ObjectSet("Stop",OBJPROP_STYLE,1);                                                                                         
                ObjectMove("Stop",0,D'2013.02.20 12:30',sl);                                                                                                 
                if (NormalizeDouble(sl*Point,Digits) >=Bid)
             {
                Print("Закрываем");
                OrderClose(OrderTicket(),OrderLots(),Bid,50,Blue);
             }
         }               
      }
   }
}

它似乎在工作,但有些东西没有被考虑进去......。

 
alexey1979621:
是的,现在有了,但它开出了一大堆交易,而我只需要在指定的货币对上开出两笔交易,比如欧元兑美元和澳元兑美元。 。

该算法比毡树更简单。

1.如果在欧洲奥迪上没有头寸,就开一个头寸

2.如果在AudiBucks上没有头寸--开一个头寸。

 
vadynik:


没用的...

似乎它应该工作,但有些东西没有考虑到......

在选择了订单之后,不应该已经在循环中采取了priceopen吗?
 
artmedia70:

该算法比毡树更简单。

1.如果在欧洲奥迪上没有头寸,就开一个头寸。

2.如果在AudiBucks上没有头寸--开一个头寸。


不,阿蒂米斯,在我的情况下不是这样的。
extern double lotAU=1.3;
extern double lotEA=1.0;
extern double Profit=30;
extern int Operation=0;
extern string Сomment           = "KVAZ";
extern int Magic                = 1111;


//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {

double prof;
double bidEA = MarketInfo("EURAUD",MODE_BID);
double askEA = MarketInfo("EURAUD",MODE_ASK);
double bidAU = MarketInfo("AUDUSD",MODE_BID);
double askAU = MarketInfo("AUDUSD",MODE_ASK);

string symEA = "EURAUD";
string symAU = "AUDUSD";

for(int i=OrdersTotal()-1; i>=0; i--)
{
 OrderSelect(i,SELECT_BY_POS);
 prof=prof+OrderProfit();
 Print("Profit="+prof);
}
if(prof>=Profit)
{
 for(i=OrdersTotal()-1; i>=0; i--)
 {
  OrderSelect(i,SELECT_BY_POS);
  {
  if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic) continue;
  OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),5,0);
  }
 }
}

 if(Operation==0)
 {
  OrderSend(symEA,OP_BUY,lotEA,askEA,3,0,0,"KVAZ",Magic,0,Blue);
  OrderSend(symAU,OP_BUY,lotAU,askAU,3,0,0,"KVAZ",Magic,0,Blue); 
 }
 if(Operation==1)
 {
  OrderSend(symEA,OP_SELL,lotEA,bidEA,3,0,0,"KVAZ",Magic,0,Red);
  OrderSend(symAU,OP_SELL,lotAU,bidAU,3,0,0,"KVAZ",Magic,0,Red);
 }
 
   return(0);
  }
 
alexey1979621:
不,阿特米达,这对我的情况不起作用。


在循环中,根据符号和魔术师的情况重新计算位置。

这是什么:OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),5,0)。


P.S.: Artemida不是Artemida a

艺术媒体

 
evillive:


在循环中,根据符号和魔术师的情况重新计算位置。

这是什么:OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),5,0)。


附注:Artemida不是Artemida a

Artmedia


来吧,我已经习惯了每个人都叫我的名字 ...无论怎样......。

实际上,这个函数中的收盘价 过去一直运行良好。编译器会自己把必要的价格塞进去。这里有人最近遇到了这个问题,导致了一个错误。

 
artmedia70:

来吧,我已经习惯了每个人都叫我的名字 ...无论怎样...

是时候改变你的绰号了吗?
 
alexey1979621:
不,阿蒂米斯,在我的情况下不是这样的。


是的,嗯...在你的情况下,当它是如此弯曲的时候,正常的建议并不真的有效...
 
Zhunko:
是时候改变你的绰号了吗?

这个绰号有300年的历史...我已经越来越喜欢它了。