[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 626

 
rigonich:

如果你想让我不回答你的问题--就这么说。

不不!!我想,但我不想让你做任何额外的工作......你已经很有帮助了......所以我自己设法找到的东西(你不能只问不做!)--我很快就会删除......
 
rigonich:

OrderModify(OrderTicket(),OrderLots( ),stop_loss,OrderTakeProfit( ), 0,CLR_NONE)。

等等,所以你有很多 -- 0。


谢谢你,!!!!

在此,我们认为....

这一行来自 "修改 "函数--我不是自己写的,而是插入了现成的,它的作用是....,也许 "0 "是指当前位置的大小?但我宁愿把它固定为一个值--感谢很多都是固定的

 
rigonich:

OrderModify(OrderTicket(),OrderLots( ),stop_loss,OrderTakeProfit( ), 0,CLR_NONE)。

停止,所以你的手数是0。


没有修改的地段:))))))) 有一个开盘价,不知道为什么......

订单修改( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)
 
lottamer:


修改中没有手数:))))))),不知道为什么有一个开盘价......

订单修改( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)


对了,我在复制和粘贴时弄混了,不习惯在评论中粘贴,如果从帮助中复制,就会作为链接粘贴。

在我自己的例子中,要插入一个有许多参数的函数,我从帮助中复制它,然后用我需要的参数替换turn/中的参数,这样就不会混淆了。

 

亲爱的各位!

下载并启动了PFG FX traider(最新版本)。试图做一个指标。

马上就有两个难题。

1.我的指标 在编辑器下是可见的,可以打开,一切正常,但我在文件系统中找不到它。完全没有,甚至没有通过搜索。

2.指标打开文件--写出刻度线。它写完后崩溃了,但我也找不到文件!!!!

这怎么可能呢? Windows 7。

 

兄弟们,不要忽视一个初学者的努力 !

需要一个现成的脚本(或类似的东西),能在档案中表明

按势头和时间过滤的时间表上的运动。

例如,该运动在14.00开始,在14.45结束。

而运动量是410点(以五位数计算)。

那么,是否有一个脚本可以在图表上直观地标记出 "过去 "的这种动作?

并使力时值可以独立插入。

______

请指出一个分支机构或一个他们可以建议如何做的地方。

在编程中--不是亚里士多德,但我怀疑这样的脚本并不难做。

___

准备分享似乎已经发现的东西,最重要的是--按时间和强度过滤的参数。

 
Chibrikin:

亲爱的各位!

下载并启动了PFG FX traider(最新版本)。试图做一个指标。

马上就有两个难题。

1.我的指标在编辑器下是可见的,可以打开,一切正常,但我在文件系统中找不到它。完全没有,甚至没有通过搜索。

2.指标打开文件--写出刻度线。它写完后崩溃了,但我也找不到文件!!!!

这怎么可能呢? Windows 7。


在Semester,有些文件有时不放在终端,而是放在D:\Users\user nameAppData\Local\VirtualStore\Program Files,然后是终端的名称。

如果几个终端安装在不同的目录中,或者终端中积累了大量的指标、EA或其他用户文件,往往会发生这种情况。

 
TUNGUS:

兄弟们,不要忽视一个初学者的努力 !

需要一个现成的脚本(或类似的东西),可以在档案中表明

按势头和时间过滤的时间表上的运动。

例如,该运动在14.00开始,在14.45结束。

而运动量是410点(以五位数计算)。

那么,是否有一个脚本可以在图表上直观地标记出 "过去 "的这种动作?

并且,力时值可以独立插入。

______

请指出一个分支机构或一个他们可以建议如何做的地方。

在编程中--不是亚里士多德,但我怀疑这样的脚本并不难做。

___

准备分享似乎已经发现的东西,最重要的是--按时间和强度过滤的参数。


我完全不明白你想从剧本中得到什么。
 

急需帮助,我完全糊涂了。这里是交易功能和订单修改功能。

void OrdersModifying(double& sl, double& tp)
{
  int total = OrdersTotal() - 1;
  sl = 0; tp = 0;
  
  for(int i=total; i>=0; i--)
  {
    if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == true)                            // Если ордер есть и он выбран..
    {
      if(g_type == OP_BUY)
      {
        if(i_sl != 0)                                                                 // Если входной параметр стоп-лосса не равен 0, то..
           sl = NormalizeDouble(OrderOpenPrice() - i_sl*pt,Digits);                    // Получаем значение стоп-лосса для выбранного ордера
        if(i_tp != 0)                                                                 // Если входной параметр тейкпрофита не равен 0, то..
           tp = NormalizeDouble(OrderOpenPrice() + i_tp*pt,Digits);                    // Получаем значение тейкпрофита для выбранного ордера
      }
      if(g_type == OP_SELL)
      {
        if(i_sl != 0)                                                                 // Если входной параметр стоп-лосса не равен 0, то..
           sl = NormalizeDouble(OrderOpenPrice() + i_sl*pt,Digits);                // Получаем значение стоп-лосса для выбранного ордера
        if(i_tp != 0)                                                                 // Если входной параметр тейкпрофита не равен 0, то..
           tp = NormalizeDouble(OrderOpenPrice() - i_tp*pt,Digits);                // Получаем значение тейкпрофита для выбранного ордера
      }
      if(sl != 0 || tp != 0)                                                            // Если полученные значения sl и tp не равныы 0, то..
      {
        OrderModify(g_ticket,OrderOpenPrice(),sl,tp,OrderOpenTime() + 86400,Lime);      // Модифицируем ордер
      }
    }
  }
}
bool OpenBuy()
{
  g_ticket = -1;
  string myNote = "сов баянул";
  
  if(GetPriceToInput() < Ask)
  {       
    g_ticket = OrderSend(Symbol(),OP_BUYLIMIT,0.1,GetPriceToInput(),3,0,0,myNote,myMagic,0,Blue);
  }
    if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true)
 
  return(true);
}
bool OpenSell()
{
  g_ticket = -1;
  string myNote = "сов шортанул";
 
  if(GetPriceToInput() > Bid)
  {
    g_ticket = OrderSend(Symbol(),OP_SELLLIMIT,0.1,GetPriceToInput(),3,0,0,myNote,myMagic,0,Red);
  }
    if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true)
  
  return(true);
}
bool Trade (int signal)
{
  FindOrders();

  if(signal == SIGNAL_BUY)                                                          // Если сигнал на покупку и открытых ордеров нет..
    if(!OpenBuy())                                                                  // открываем лимитный ордер на покупку
      return(false);                                                                
      
  if(signal == SIGNAL_SELL)                                                       // Если сигнал на продажу и открытых ордеров нет..
     if(!OpenSell())
       return(false);                                                              // открываем лимитный ордер на продажу
  
  OrdersModifying(sl, tp); - ТУТ НЕ ВЪЕЗЖАЮ КАК БЫТЬ

  return(true);
}

我目前有订单修改不工作,虽然当几个功能在一起时,一切都能工作。但我希望所有的功能都能分开,以方便使用。一般来说,我希望有函数OrdersModifying 来修改订单。我知道从逻辑上讲,它应该被粘贴到我所粘贴的Trade 函数中,但我们必须将函数OrdersModifying 中的2个 参数sltp 传给它。

我向OrdersModifying 函数传递 sl 和tp参数是否正确

 
hoz:

急需帮助,我完全糊涂了。这里是交易功能和订单修改功能。

我目前有订单修改不工作,虽然当几个功能在一起时,一切都能工作。但我希望所有的功能都能分开,以方便使用。一般来说,我希望有函数OrdersModifying 来修改订单。我知道从逻辑上讲,它应该被粘贴到我所粘贴的Trade 函数中,但我们必须将函数OrdersModifying 中的2个 参数sltp 传给它。

我是否通过OrdersModifying 函数的参数正确传递了 sl 和tp变量

你首先做sl = 0; tp = 0; 然后if(sl != 0 || tp != 0)。
原因: