新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 768

 

我搜索了整个论坛,我找不到自动计算指示器中箭头/图标移动 的方法(当你切换TF时,你需要调整偏移量),但我知道,几个月前有人发布了一个现成的函数

求你了!))))。

 
Igor Makanu:

我搜索了整个论坛,我找不到自动计算指示器中箭头/图标移动 的方法(当你切换TF时,你需要调整偏移量),但我知道,几个月前有人发布了一个现成的函数

求你了!))))。

这个?

Как увеличить размер Wingdings-символа?
Как увеличить размер Wingdings-символа?
  • 2018.09.09
  • www.mql5.com
Смотрю я на свойства. Нет там, вроде бы, нужного...
 
Artyom Trishkin:

这个?

酷!

ZS:有一点我不明白,为什么我找了大约20分钟,我以为我记得维塔利发过这个帖子(我搜索了他的帖子),但你找到了,我没有(((((。

 
Igor Makanu:

酷!

ZS:我有一点不明白,为什么我找了20分钟,肯定记得维塔利发过这个帖子(我在他的帖子里找过),但你找到了,我没有(((((。

这道题只是打开了:记事本和一个名为 "有用 "的文件。我看到的东西可能对某个地方的人有用,而且不是小事--我输入帖子的链接和一个简短的描述。多年来一直如此......我们在这里是为了帮助人们,而不仅仅是为了 "照顾 "秩序。

 
Ghabo:

谢谢你。我的肌肉不够用)要确定红色变为蓝色的时刻并不难,但如何知道此时的蓝线被黑色覆盖,我就不知道了。应该在其中加入什么条件:-

当条形图越过黑线时排除信号?在你的截图中,计算最后一次向上的交叉点,而不计算前三条的交叉点。

更简单的是,当条形图收于EMA(21)线之上时,它们被写入一个缓冲区(蓝色),在它之下它们被写入另一个缓冲区(红色)。为了排除这条线路的交叉信号,至少应该有两个连续的柱状物被收高或收低。
对于代码来说,它将是如下的。

        bool
        b = false,
        s = false; //обе эти переменные должны быть объявлены за пределами всех блоков программы

        BUY_1=NormalizeDouble(iCustom(NULL,0,"4X Pip Snager Trend",1,1),Digits);
        
        if(BUY_1 != EMPTY_VALUE)
          {
                // первичный вход в этот блок означает, что 1 бар закрыт выше линии, но действие при этом не выполняется т. к. b == false (либо изначально, либо было сброшено в блоке else)
                // вторичный и все последующие подряд входы в этот блок означают, что, как минимум 2 бара подряд закрыто выше линии и действие будет выполнятся т. к. в предыдущем входе b присвоено значение true
                if(b)
                  {
                // ДЕЙСТВИЕ ДЛЯ СИНЕЙ ЛИНИИ
                  }     
                b = true;
                s = false;
          }
        elae
          {
                // аналогично, как и в блоке выше
                if(s)
                  {
                // ДЕЙСТВИЕ ДЛЯ КРАСНОЙ ЛИНИИ
                  }
                b = false;
                s = true;
          }
 
Igor Makanu:

酷!

ZS:我不明白的一点是,为什么我找了20分钟,我以为我记得维塔利发过这个帖子(我搜索了他的帖子),但你找到了,我没有(((((。

但这种方法没有考虑到用户对图表的滚动,这就是问题的关键。把指标放在一个波动期,然后滚动到一个平缓期,或者反过来。
在这个意义上,依靠一些ATR数据来计算距离更有意义。
如果你不想跟踪用户的图表滚动,以根据新的极端图表价格重新排列所有的箭头。

 
这里有一个基于分形的例子。我已经做了2个额外的缓冲器。但对于你的任务来说,这个变体可能是需要的。
附加的文件:
 
Nikolay Khrushchev:
这里有一个基于分形的例子。制作了2个额外的缓冲器。对于分形来说,这是多余的,因为人们可以简单地参考蜡烛的价格。 但这个变体可能对你的任务有用。

谢谢你!

是的,我确实有一个更简单的任务--我签署了大约30个带有节点编号的ZigZag节点,在历史上没有文字标签。


阿尔乔姆-特里什金

谜题的打开方式很简单:记事本和名为 "有用 "的文件。我看到的可能是对某人有用的地方,而且不是小事--我把帖子的链接和简短的描述写在上面。多年来一直如此......我们在这里是为了帮助人们,而不仅仅是为了 "照顾 "秩序。

劝说,在KB的用处填补,不说对不起,所以我不分享,只是陪着他们的代码,我不确定我会,并讨论什么和如何已经累了

ZS:在有趣的和准备好的,大约98%。

1 .将ZigZag顶点作为一个数组结构来访问(动态列表和运算符重载[]),一切似乎都在飞,你写ZZ[2].price非常方便。ZZ[i].up = true

2.通过MT4的第二个图表

在这些(1-2)中,有没有对论坛感兴趣的东西? - 或者就像其他地方一样,给我们一个100%现成的代码,我们不会自己做任何事情 ((((

 
Igor Makanu:

谢谢你!

是的,我确实有一个更简单的任务--我签署了大约30个带有节点编号的ZigZag节点,在历史上没有文字标签。


劝说,在KB的用处填补,不说对不起,所以我不分享,只是伴随着他们的代码,我不确定我会,并讨论什么和如何已经累了

ZS:在有趣的和准备好的,大约98%。

1 .将ZigZag顶点作为一个数组结构来访问(动态列表和运算符重载[]),一切似乎都在飞,你写ZZ[2].price非常方便。ZZ[i].up = true

2.通过MT4的第二个图表

在这些(1-2)中,有没有对论坛感兴趣的东西? - 或者就像其他地方一样,给我们一个100%现成的代码,我们不会自己做任何事情 ((((

那么,你可以从每个代码中得到一些有用的东西,有时甚至是不寻常的东西。

Codebase正是为了这个目的而设计的,而不是为了两个人用它做什么。

P.S. 这给了我一个好主意,我也要把它改写成一个数组结构,不知为什么我以前都没有想到。
 
Vitaly Muzichenko:
P.S. 这给了我一个好主意,我也应该在结构阵列上重写,我以前从未想过这个问题。

结构数组比较简单,但功能较低,我是通过动态列表CList 来实现的--实现起来很简单,但很难习惯在MQL中使用指针,我会试着敲定代码并在KB中公布。

原因: