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

 
fenix74:
evillive,试着按你说的进行替换,但我想即使这样也需要更多的知识,编译时出现了 "53个错误,18个警告",结果见附件。evillive,如果你有时间,我可以请你做这些替换吗?

你只需要更用心一些,或者不要懒得在每一行指定变量类型,或者用逗号代替分号。而在指标调用 中,必须对变量进行定义,而不仅仅是来自于火炬。


这里有一个例子,然后--自己来...

虽然第二个文件似乎是好的,除了一个变量名称中有一个点。变量名称中没有圆点。

附加的文件:
 
Vinin:
只有四个功能是由服务器访问的。打开、修改和关闭(删除)一个订单
artmedia70:
交易功能。它们是唯一专门向贸易服务器发送请求并从其接收响应的。

谢谢你。

 
Roger:
用户可以对历史记录进行排序,仅用于视觉感知,历史记录中的位置数字不能被改变。


如何根据指标 来判断一个策略是有利可图还是无利可图?
 
khorosh:

如果你要拆开这个函数,你不应该剪掉函数的标题,那里有重要的信息。

返回最后打开的位置的类型或-1 - 这意味着如果没有关闭的位置,那么当函数被调用时,其值将等于-1。

sy - 工具的名称(货币对)。

mn - 神奇的数字。如果我们设置为-1,那么无论使用什么魔法数字,该函数都将返回最后一个封闭订单的类型。

也知道这一点,除了 "神奇数字 "的功能。
谢谢你提供有用的指导。
没有必要截断对变量的描述

artmedia70:

1.让我们免于讽刺,好吗?他使你的学习变得舒适和轻松。天才与此有什么关系?
2.争论性的。
3.从你在代码中的评论来看,你根本不懂什么。
4.它发生了。

关于第2项,这里有一个例子。

不必要的东西少了。

1 - 没有讽刺!天才在于,它使我的学习变得舒适和轻松。
2 - 有多少人就有多少意见。:)
3 - 这还是可以理解的。我没有澄清这个变量的可执行目的,导致这个意见的出现。

谢谢你对函数串动作的详细描述,我确保了我对所提出的函数的理解。

请注意,我们现在是在同时就四个主题进行虚拟对话。在互联网上逐点列出你的答案是非常有利的,但有些人把它当作一种侮辱,对不起。

顺便说一下,请称呼我为 "你",因为我的年龄不允许我被称呼为 "你"(这是在九年级社会研究课程中形成的观点)。
khorosh:

1-你的例子并不正确。2 - 当你调用一个有参数的函数时,你必须在括号里给出这些参数的值,用逗号隔开。你还应该知道,并不是所有的函数都被赋值。3 - 如果函数的类型是无效的,那么它就没有任何意义,是为了执行一些动作,或者计算一些变量。在后一种情况下,你需要知道这些变量的名称,以便使用这个函数的结果。

对不起,答案被分成了几段。
1-我的例子是不正确的--这是我无知的后果。
2 - 我完全忘记了支架的事。谢谢你。他们让我想起了他们。
3 - 无效 ?当用动作(*, /, +, - )计数时,是否可以用它来代替bool?


artmedia70:

编译器会在这一行产生一个错误,说这个变量没有被声明。

最低要求是这样的。


是的,是的!我忘记了括号,但我已经被提醒了,不管怎样,谢谢你!"。
 
Profitov:

根据指标读数,你怎么能从历史上判断该策略是盈利还是亏损?

这些指标使用收盘价/开盘价 和条形图的高点/最低点进行计算。 收盘价/开盘价和条形图的高点/最低点的值被储存在历史中。 然后,指标从历史上获得收盘价/开盘价、高点/最低点的数值, ,相应地指标从历史上进行计算。 ,可以得出结论,如果策略是基于指标的指示,你可以通过历史数据检查它是否有利可图或无利可图。





Vinin:

你应该先熟悉一下函数的概念。然后你可以继续讨论它们的作用和如何使用它们。

熟悉 "功能 "一词的三种解释。
 
Link_x:


3 - 无效 ?当用动作(*, /, +, - )计数时,是否可以用它来代替bool?

我不明白这个问题。文档中给出了一个打印错误名称的无效类型 函数的例子。

void errmesg(string s)
  {
   Print("error: "+s);
  }
 

也许第三次之后,还会有人关注我的请求?

写了一个CAM函数,但测试人员给出的错误是4051,即不可能的手数。有人对此有什么看法吗?

double FindRightLot (int otype) // функция поиска лота, необходимого для выхода из просадки после 
                               //закрытия сетки ордеров
{
  double Lot=0; double TotalLot=0;
  for (int i = OrdersTotal()-1; i>0; i--)
  {
    if (OrderSelect(i, SELECT_BY_POS,MODE_TRADES))
    {
       if (OrderSymbol()==Symbol() && OrderMagicNumber()==Magic && OrderType() == otype)
       {
         if (otype == OP_BUY)
         {
           Lot = NormalizeDouble (((OrderOpenPrice()-Bid)*Point)*OrderLots()/TP,2); 
           if (Lot>0)
           {
              TotalLot= TotalLot+Lot;
           }
         }
           
       
         else if (otype == OP_SELL)
         {
           Lot = NormalizeDouble (((Ask-OrderOpenPrice())*Point)*OrderLots()/TP,2);
           if (Lot>0)
           {
            TotalLot= TotalLot+Lot;
           }
           
         }
       }
     }
   }
   return (TotalLot);
   
 }
 
Trader7777:

也许第三次之后,还会有人关注我的请求?

写了一个CAM函数,但测试人员给出的错误是4051,即不可能的手数。有人对此有什么看法吗?


价格是否需要乘以点数?

(OrderOpenPrice()-Bid)*Point)
 
Trader7777:

也许第三次还会有人注意到我的请求?

我用SAM写了这个函数,但测试人员给出的错误是4051,即不可能的手数。有人对此有什么看法吗?

 double Lot=0; double TotalLot=0;
if (Lot>0)
注意变量的值,它设定了开仓时 的手数。
此值为零。




,不可能在交易量为零的情况下建仓。
vadynik:


价格是否需要乘以点数?


这也是可能的,主要的是要正确地写代码。
 
vadynik:


价格是否需要乘以点数?


假设我在1.5万买入,价格涨到了1.49950。如果你不乘以点数,得出的结果是0.0005*0.1/100=0.0000005,这还不够。


如果相乘,那么50*0.1/100= 0.05就是正确的数值。