[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 93

 
coronel:

这里有一个提示。

在编辑器中,有一个很酷的技巧--F1提示。

突出你要取消的功能,然后按F1。

帮助会打开,你应该仔细研究函数的参数应该是什么。

不要错过送入函数的参数的数量和质量。


谢谢你!
 
100yan:

如何在不同的时间和一次正确地关闭一个订单的部分?我已经挣扎了好几天了......

https://www.mql5.com/ru/forum/131277/page69

如果部分平仓后的持仓量小于平仓前,且部分平仓发生的条形图没有变化,则不要再次平仓。这是在当前条形图上 "一次 "关闭部分头寸的众多方法之一。

您自己定义关闭头寸(头寸的一部分)的标准,然后如果您不确定,我们会帮助您。

 

你好。

你能告诉我如何使警报在指定的分钟数后出现吗?

我想使用Time[],但我想不出来,所以我做了以下工作:Sleep(60000*step);。

工作框架M1

extern int  step = 3;   // периодичность появления алерта мин.

static int        prevtime = 0;
//-------------------------------------------
int start()
  {
   if (Time[0] == prevtime) return(0);
   // Запомним текущий бар
   prevtime = Time[0];
//-------------------------------------

   Alert ("прошло ",step," мин.");
   
   //Sleep(60000*step);

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


 
Zar:

你好。

你能告诉我如何使警报在博览会的特定分钟数后出现吗?

我想用Time[],但我想不出来,所以我这样做了:Sleep(60000*step);。

工作框架M1

 extern int  step = 3;     // периодичность появления алерта в мин.
 datetime  LastAlertTime;

//-------------------------------------
 int start()
  {
//-------------------------------------
       if(TimeCurrent() - LastAlertTime > step*60)
        {    
          Alert ("прошло ",step," мин.");
          LastAlertTime=TimeCurrent();  
        }
//--------------------------------------
   return(0);
  }
 
coronel:

谢谢你,它正在工作。
 
artmedia70:

如果部分平仓后的仓位手数小于平仓前,且部分平仓发生的条形图没有变化,则不要再次平仓。这是在当前栏位上 "一次 "关闭部分头寸的许多方法之一。

如果你定义了平仓的标准(其部分),如果你不确定,我们会帮助你。


+ sergeev - 谢谢你的反馈意见!

这个问题在这里描述https://www.mql5.com/ru/forum/131277/page69 简而言之,这个想法是打开一个订单,并在达到某些TP水平时将其部分关闭。问题是我们在M5-M30交易,订单不是在条形图上关闭,而是在更长的时间段(D1,等等)关闭。一旦达到TP1,第一部分的关闭参数被触发,等等。我找不到关于如何识别零件的解决方案,以便不关闭整个订单。(我的第一个想法是设置TR1,但后来价格一直在走,并对其他部分发出关闭信号......)

提前感谢!

 
100yan:


+ sergeev - 谢谢你的反馈意见!

问题概述如下:https://www.mql5.com/ru/forum/131277/page69 简而言之,我们的想法是建立一个订单,并在达到某些TP水平时分批关闭。问题是我们在M5-M30交易,而订单不是在条形图上关闭,而是在更长的时间段(D1,等等)。当达到TP1时,第一部分的关闭参数被触发,等等。我找不到关于如何识别零件的解决方案,以便不关闭整个订单。(我的第一个想法是设置TR1,但后来价格一直在走,并对其他部分发出关闭信号......)

提前感谢!

创建标志,例如

对于TP1 - bool TP1,对于TP2 - bool TP2,等等...。

最初它们的值是假的。

在另一次关闭之前,你做了一个检查。

if (!TP1) {部分关闭第一部分的代码,关闭成功后写TP1=true}。

if (!TP2) {部分关闭第二部分的代码,成功关闭后写TP2=true}。

...以此类推,所有部件都是如此...

因此,这些标志将表明每个部分已经被关闭过一次......。

 
我如何从零开始获得第3条的收盘值?
 
ScioMe:
我如何从零开始获得第3条的收盘值?
  double Bar3Close = iClose(NULL,0,3);   
 
谢谢你,你可以这样做:关闭[3]?