нужна помощь для перевода простого индикатора - Page 3
Страница 3 из 813 FirstFirst 123
Results 21 to 23 of 23

Thread: нужна помощь для перевода простого индикатора

  1. #21
    @ Zen; Можете ли вы мне помочь в преобразовании следующего кода Tradestation в MT4: Inserted Code {Choppy Market Index Function. Эта функция возвращает значение от 0 до 100. Более низкое значение означает более высокую рыночную нерешительность (choppiness), тогда как более высокая стоимость означает трендовый рынок , Единственный вход - количество баров, на которые мы оглядываемся.} Входы: periodLength (Числовые); Vars: num (0), знак (1); if (periodLengthlt; gt; 0), тогда начинаем denom = Highest (High, periodLength) - Lowest (Low, periodLength); num = Закрыть # 91; periodLength-1 # 93; - Закрыть; num = AbsValue (num); ChoppyMarketIndex = 0.0; if (denomlt; gt; 0), то ChoppyMarketIndex = numdemon * 100; конец; Вы заметили, как эта функция состоит из других функций (строительных блоков)? Мы вычислили деноматор (знаменатель), используя самые высокие и самые низкие функции. Мы вычислили num (числитель), используя функции AbsValue (возвращает абсолютное значение числа). Вероятно, только путаный фрагмент кода в этой функции: Inserted Code Close # 91; periodLength-1 # 93; - Закрыть. Вы можете спросить, почему мы вычитали 1 из periodLength. Это большой вопрос. Если вы включите сегодняшнюю цену закрытия в расчет, тогда цена закрытия 30 дней назад будет называться Close [29]. Помните, что Close [1] - вчерашняя цена закрытия, а не сегодняшняя. Поскольку мы хотим, чтобы наш индекс протекал между 0 и положительным 100, мы удаляем отрицательный знак движения вниз на рынке. Нас интересуют только абсолютные расстояния. Вот что я придумал, но не уверен, что он правильно закодирован: Inserted Code double ChoppyMarketIndex (int periodLength) {double num = 0; double denom = 0; if (periodLength! = 0) {denom = High # 91; iHighest (Символ (), PERIOD_D1, MODE_HIGH, periodLength, 0) # 93; - Низкий # 91; iLowest (Символ (), PERIOD_D1, MODE_LOW, periodLength, 0) # 93 ;; num = Закрыть # 91; periodLength-1 # 93; - Закрыть # 91; 1 # 93 ;; num = MathAbs (num);/denom = MathAbs (денома); } if (denom! = 0) {return (NormalizeDouble (numdenom * 100,0)); } } Заранее спасибо,

  2. #22
    Привет, TimeFreedom, Если вы хотите привлечь мое внимание, пожалуйста, позвоните мне в следующий раз. Я на самом деле не трачу свое время на расчесывание всех потоков, чтобы найти сообщения, направленные на меня, поэтому вам нужно указать мне на это. Серьезно, я бы не видел вашего вопроса, если бы я случайно не нажал эту нить. похоже, что это судьба, поэтому я посмотрю, что я могу сделать. =) первая вещь первая. это будет применяться к индикатору или эксперту? если он будет в индикаторе, тогда эта строка num = Закрыть [periodLength-1] - Закрыть [1]; собирается дать вам проблему ... привет, Дзен p.s., я собираюсь попросить вас сейчас, чтобы направить вас к моему ответу.

  3. #23
    bump Пожалуйста, подтвердите правильность кода MT4.

Действующие разрешения

  • Вы не можете создавать новые темы
  • Вы не можете размещать ответы
  • Вы не можете использовать вложения
  • Вы не можете редактировать ваши записи
  •  
  • BB-код - Вкл.
  • Смайлики - Вкл.
  • Код [IMG] - Вкл.
  • Код [VIDEO] - Вкл.
  • HTML-код - Выкл.
Веб-сайт использует cookies
Веб-сайт использует cookies, в настоящее время некоторые из них уже установлены. Вы можете ознакомиться с более подробной информацией об использовании нами cookies здесь. Чтобы принять условия использования cookies, пожалуйста, нажмите на кнопку справа. Если вы продолжаете пользоваться веб-сайтом, вы по умолчанию принимаете условия использования cookies.