Можно ли сделать ZigZag на MACD?

Тема в разделе "3. - зиг-заги", создана пользователем TarasBY, 1 фев 2010.

  1. TarasBY

    TarasBY Новичок

    Можно ли сделать индикатор типа ZigZag на показаниях MACD по всем тайм-фреймам? Есть функция, "собирающая" показания MACD:
    <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->int AskMACD (int Level)
    {
    &nbsp;&nbsp;&nbsp;&nbsp;double Ind;
    &nbsp;&nbsp;&nbsp;&nbsp;double BuyIndex = 0;
    &nbsp;&nbsp;&nbsp;&nbsp;double SellIndex = 0;

    &nbsp;&nbsp;&nbsp;&nbsp;int TF[] = {1,5,15,30,60,240,1440,10080,43200};

    &nbsp;&nbsp;&nbsp;&nbsp;
    &nbsp;&nbsp;&nbsp;&nbsp;if (Level > 9)
    &nbsp;&nbsp;&nbsp;&nbsp;{Level = 9;}
    &nbsp;&nbsp;&nbsp;&nbsp;
    &nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i < Level; i++)
    &nbsp;&nbsp;&nbsp;&nbsp;{
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (iMACD (Symbol(), TF, 12, 26, 1, PRICE_CLOSE, MODE_MAIN, 0) <
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iMACD (Symbol(), TF, 12, 26, 1, PRICE_CLOSE, MODE_MAIN, 1))
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{SellIndex += iMACD (Symbol(), TF, 12, 26, 1, PRICE_CLOSE, MODE_MAIN, 0);}
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (iMACD (Symbol(), TF, 12, 26, 1, PRICE_CLOSE, MODE_MAIN, 0) >
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iMACD (Symbol(), TF, 12, 26, 1, PRICE_CLOSE, MODE_MAIN, 1))
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{BuyIndex += iMACD (Symbol(), TF, 12, 26, 1, PRICE_CLOSE, MODE_MAIN, 0);}

    &nbsp;&nbsp;&nbsp;&nbsp;}

    &nbsp;&nbsp;&nbsp;&nbsp;if (SellIndex > BuyIndex)
    &nbsp;&nbsp;&nbsp;&nbsp;{
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (BuyIndex == 0)
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{Ind = SellIndex;}
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{Ind = SellIndex / BuyIndex;}
    &nbsp;&nbsp;&nbsp;&nbsp;}
    &nbsp;&nbsp;&nbsp;&nbsp;if (SellIndex < BuyIndex)
    &nbsp;&nbsp;&nbsp;&nbsp;{
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (SellIndex == 0)
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{Ind = BuyIndex;}
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{Ind = BuyIndex / SellIndex;}
    &nbsp;&nbsp;&nbsp;&nbsp;}

    &nbsp;&nbsp;&nbsp;&nbsp;return (Ind);
    }<!--c2--></div><!--ec2-->
    На основе значений Ind и хотелось бы иметь индикатор типа ZigZag. Кто-нибудь поможет в реализации? :ld:
     
  2. nen

    nen Профи форума


    Посмотрите здесь: <span class='inv'><![CDATA[<noindex>]]></span><a href="http://www.onix-trade.net/forum/go.php?http://codebase.mql4.com/ru/5925" rel="nofollow" target="_blank">http://codebase.mql4.com/ru/5925</a><span class='inv'><![CDATA[</noindex>]]></span> и <span class='inv'><![CDATA[<noindex>]]></span><a href="http://www.onix-trade.net/forum/go.php?http://codebase.mql4.com/ru/5712" rel="nofollow" target="_blank">http://codebase.mql4.com/ru/5712</a><span class='inv'><![CDATA[</noindex>]]></span>
    Возможно, автор этих индикаторов поможет.
     
  3. TarasBY

    TarasBY Новичок

    Спасибо и на том! А Вас не заинтересовало?
     
  4. nen

    nen Профи форума

    Времени нет. А Петр как раз такие зигзаги делает.

     
  5. nen

    nen Профи форума

    <span class='inv'><![CDATA[<noindex>]]></span><a href="http://www.onix-trade.net/forum/go.php?http://codebase.mql4.com/ru/6827" rel="nofollow" target="_blank">http://codebase.mql4.com/ru/6827</a><span class='inv'><![CDATA[</noindex>]]></span>
     

Поделиться этой страницей