fanyj 发表于 2006-3-18 18:36

mt4中的三值图指标 ---请Leonardo1977加以修改

在网上苦寻了两天,总算找到了three line break,却是在主图中显示,请Leonardo1977修改为在附图中显示,更直观一些.

谢谢:han:

[ 本帖最后由 fanyj 于 2006-3-18 18:39 编辑 ]

fanyj 发表于 2006-3-18 18:41

这是我目前在网上,能找到与三值图最接近的mq4,指标了 :mlw:

希望在出差回来后能看见真正的三值图指标:han:

fanyj 发表于 2006-3-18 18:44

另附老毛子的代码 :



/*[[
        Name := Three Line Break
        Author := Equipe Forex
        Link := http://www.equipeforex.com
        Separate Window := No
        First Color := Blue
        First Draw Type := Histogram
        First Symbol := 159
        Use Second Data := Yes
        Second Color := Red
        Second Draw Type := Histogram
        Second Symbol := 159
]]*/
Inputs: BreakPeriod (5);

Vars: CurrentBar (0), CurrentTrend (0), TotalBars (0), Value1 (0), Value2 (0);
Vars: LowestBox (1000), HighestBox (-1000), i (0), CalculateLowHigh (True);

Arrays: BoxLow (1000), BoxHigh (-1000);

SetLoopCount(0);

TotalBars = Bars;
CurrentBar = TotalBars-1;

If (Close < Open) Then {
        CurrentTrend = -1;
        BoxHigh = Open;
        BoxLow = Close;
        Value1 = Low;
        Value2 = High;
} Else {
        CurrentTrend = 1;
        BoxHigh = Close;
        BoxLow = Open;
        Value1 = High;
        Value2 = Low;
};

SetIndexValue(CurrentBar, Value1);
SetIndexValue2(CurrentBar, Value2);

For CurrentBar = TotalBars-2 Downto 0 Begin
        Value1 = 0;
        Value2 = 0;
       
        If (CalculateLowHigh) Then {
                LowestBox = 1000;
                HighestBox = -1000;
                For i = BreakPeriod + 1 Downto 0 Begin
                        LowestBox = Min(LowestBox, BoxLow);
                        HighestBox = Max(HighestBox, BoxHigh);
                End;
                CalculateLowHigh = False;               
        };
       
        If (((CurrentTrend > 0) And (Close < LowestBox)) Or
               (CurrentTrend < 0) And (Close < BoxLow)) Then {
                Value1 = Low;
                Value2 = High;

                For i = 0 To BreakPeriod Begin
                        BoxLow = BoxLow;
                        BoxHigh = BoxHigh;               
                End;

                BoxHigh = BoxLow;
                BoxLow = Close;

                CurrentTrend = -1;
                CalculateLowHigh = True;
        } Else If (((CurrentTrend < 0) And (Close > HighestBox)) Or
                                (CurrentTrend > 0) And (Close > BoxHigh)) Then {
                Value1 = High;
                Value2 = Low;

                For i = 0 To BreakPeriod Begin
                        BoxLow = BoxLow;
                        BoxHigh = BoxHigh;               
                End;

                BoxLow = BoxHigh;
                BoxHigh = Close;

                CurrentTrend = 1;
                CalculateLowHigh = True;
        };

        SetIndexValue(CurrentBar, Value1);
        SetIndexValue2(CurrentBar, Value2);
End;

Leonardo1977 发表于 2006-3-18 19:14

原帖由 fanyj 于 2006-3-18 18:36 发表
在网上苦寻了两天,总算找到了three line break,却是在主图中显示,请Leonardo1977修改为在附图中显示,更直观一些.
谢谢:han:
这个问题先前许多人问到过,而上面的这个指标我很早就用了,不过,据懂行的编程高手讲,因为M4语言的局限性,MT4是不能编出标准的新三值图的。

想看标准规范的新三值图很简单,就是用 GFT 的dealbook fx2看盘器。
输入 dealbook fx2 和GFT两个关键词就可以找到,然后在里面找那个 TLB 图表就可以顺利地调出 新三值图了。

你先搜索一下,找不到的话,给我短消息,我发给你。

[ 本帖最后由 Leonardo1977 于 2006-3-18 19:20 编辑 ]

fanyj 发表于 2006-3-18 19:18

原帖由 Leonardo1977 于 2006-3-18 19:14 发表

这个问题先前许多人问到过,据懂行的编程高手讲,因为M4语言的局限性,在MT4

但我在国外的论坛,看到他们已将该指标成功的应用于mt4:han:

[ 本帖最后由 fanyj 于 2006-3-18 19:20 编辑 ]

Leonardo1977 发表于 2006-3-18 19:23

不好意思,我还是第一次听说,上面的链形线和新三值图的图表,我可以帮你留意一下。
编程的事情,我不擅长,达不到你的要求。

fanyj 发表于 2006-3-18 19:30

原帖由 Leonardo1977 于 2006-3-18 19:23 发表
不好意思,我还是第一次听说,上面的链形线和新三值图的图表,我可以帮你留意一下。
编程的事情,我不擅长,达不到你的要求。

呵呵,这些东东是不太好找

grunge 发表于 2006-3-19 00:51

fanyi兄认为这个东西很有用马?

我现在关心得比较少了
页: [1]
查看完整版本: mt4中的三值图指标 ---请Leonardo1977加以修改