Как кодировать? - страница 292

 

Идея индикатора, но трудности с программированием

привет

Я немного программировал в Mt4, это весело, но я не профессионал, просто редактирую старый индикатор. Я хочу сделать простой индикатор, но не знаю, как это сделать.

Это простой индикатор, он просто проверяет значение, если значение всех переменных одинаково, он рисует точку, где значение всех переменных совпадает.

мое простое решение

предположим, у нас есть переменные

double movingavg1;

double movingavg12;

double movingavg13;

double movingavg14;

double movingavg15;

double movingavg16;

double movingavg17;

double movingavg18;

double movingavg19;

double movingavg10;

double movingavgall;

объявляем переменную, я просто привожу пример, я использую iStochastic(1), но мы можем использовать любой индикатор.

movingavg12=iStochastic(1)

movingavg13=iStochastic(2)

.

.

.

и так далее

теперь

if (movingavg12=movingavg13=movingavg14,....) (помещаем значение в переменную "movingavgall") //помещаем значение, которое равно для vria

нарисовать movingavgall на барах

Приложение

предположим, я хочу проверить, где скользящая средняя 3 и скользящая средняя 5 имеют одинаковое значение.

даже этот индикатор можно использовать с RSI, где значение RSI 1 и RSI 2 = 80

и многое другое

Даже если мы добавим MTF, это будет дополнительным бонусом.

выглядит просто в написании, но я не смог найти решение, надеюсь, кто-нибудь сможет помочь.

надеюсь, вы поймете, о чем я говорю

спасибо

 

Как закодировать мой индикатор в советнике?

Пожалуйста, помогите мне, как закодировать этот индикатор в советнике? Этот индикатор работает на H4 или сделать выбор работать на H4 или D1.

Правило очень простое:

Если находим No.3 на H4 или D1 --> Blue --> Buy --> No.3 на открытии графика ждем, пока направление не совпадет с H4 и покупаем.

Если найти No.3 на H4 или D1 --> Красный --> Продавать --> No.3 на открытом графике ждать, пока направление не совпадет с H4 и продавать.

Мне нужно только :

extern int SL = 100; //стоп лосс

extern int TP = 100; //забрать прибыль

extern bool Trailing = true;

extern int TS = 10; //трейлинг стоп

extern double Lots = 0.1;

extern int TimeStart = 7;

extern int Time Stop = 14;

int MagicNumber = 031174;

С наилучшими пожеланиями,

Спасибо за вашу помощь

Файлы:
paijo123.mq4  17 kb
 

Код для захвата сигнала на покупку, нарисованного в предыдущем периоде

Мой код должен перехватить сигнал на покупку, который индикатор периодически рисует в предыдущем периоде, но я не хочу смотреть только на этот период, иначе я получу двойной сигнал на покупку в двух периодах. Я относительно новичок в MQL4, но написал код, который, как мне кажется, справляется с этой задачей.

Может ли кто-нибудь подтвердить, что это правильный способ решения данной задачи?

bool dynamic_latch(int mode)

{

if (var_current_period==1 && var_previous_period==0) then return 1;

if (var_current_period==0 && var_previous_period==1 && dynamic_latch!==1) then return 1;

else return 0;

}

 

Помогите с MTF nonLagMa 7.1 от Igorad

Здравствуйте, пожалуйста, есть ли кто-нибудь, кто знает, как добавить простую опцию NBars, чтобы рассчитывать код только для определенного количества баров для этих индикаторов?

У меня не получается сделать это с этими индикаторами. Обычно я модифицирую цикл for для этой цели, но с этими индикаторами это не работает.

Пожалуйста, кто-нибудь знает, как я должен поступить?

mtf_nonlagma_v7.1.mq4

nonlagma_v7.1.mq4

спасибо

Файлы:
 

сокращение клавиатуры в советнике?

Здравствуйте

Возможно ли использовать некоторые комбинации клавиш в советнике? Я не могу найти функцию, чтобы сделать это... может быть с DLL или что-то еще... Кто-нибудь уже пробовал это сделать? Я пытаюсь добавить это в советник для закрытия всех ордеров...

Спасибо

 

Как код

mladen:
на недельных и мольных графиках

Мастер Младен,

Могу ли я спросить, если я хочу заменить код на своем индикаторе на:

No.1

Number 1 формируется, если обнаруживается, что очень сильный импульс или большая свеча. Или выстроенные бычьи свечи или выстроенные медвежьи свечи.

No.2

Если после цифры 1 появляется и пока не сложились обстоятельства и не удалось сделать новый максимум или новый минимум, или сделать свечу закрытия выше или ниже под высокой свечой бычьей или медвежьей последней из стопы No.1. Таким образом, стоп №2 является коррекцией стопа №1.

No.3

В конце торговой сессии коррекция не смогла сформировать минимум или максимум ниже или выше ноги №1, формируется нога №3.

Как это кодирует мастер Младен?

С наилучшими пожеланиями,

Спасибо

Файлы:
123.jpg  61 kb
 

Импорт библиотеки Boost в файл сценария Metatrader (MT4).

Я работаю в файле сценария Metatrader и мне нужно вызвать функцию из библиотеки Boost. Кто-нибудь знает, возможно ли это? Если да, то как настроить импорт?

 

Показать последнюю закрытую прибыль

Здравствуйте,

Мне нужен следующий код:

Мне нужна сумма последней закрытой сделки.

Как я могу его закодировать? Я буду делать алерт (PopUp), после того как сделка достигнет TakeProfit.

С наилучшими пожеланиями,

halobungie

 

Что не так с моим кодом?

Я пытаюсь изучить MQ4. Моя первая простая программа должна выдавать алерт, когда 2 MA пересекаются. Я не могу понять, почему

этот код не работает.

Любая помощь будет очень признательна! Заранее спасибо.

extern int Period_MA1 = 5;

extern int Period_MA2 = 1;

double MA1;

double MA2;

int init()

{

return(0);

}

//+------------------------------------------------------------------+

int deinit()

{

return(0);

}

//+------------------------------------------------------------------+

int start()

{

//--------------------------------------------------------------------

MA1=iMA(NULL,0,Period_MA1,0,MODE_SMA,PRICE_CLOSE,0);

MA2=iMA(NULL,0,Period_MA2,0,MODE_SMA,PRICE_CLOSE,0);

//--------------------------------------------------------------------

if (MA2 == MA1 )

Alert("Цена такая же(",Period_MA2,").");// Alert

возврат;

}

 

...

Вы можете найти прибыль последнего закрытого ордера с помощью функции, подобной этой:

double lastOrderProfit(int magicNumber=0)

{

datetime lastTime = 0;

double lastProfit = 0;

for(int i=OrdersHistoryTotal()-1; i>=0; i--)

{

if (OrderSelect(i,SELECT_BY_POS, MODE_HISTORY)==false) break;

if (magicNumber!=0)

if (OrderMagicNumber() != magicNumber) continue;

if (OrderSymbol() != Symbol()) continue;

if (OrderCloseTime() <= lastTime) continue;

lastTime = OrderCloseTime();

lastProfit = OrderProfit()+OrderSwap()+OrderCommission();

}

return(lastProfit);

}
halobungie:
Здравствуйте,

Мне нужен следующий код:

Мне нужна сумма последней закрытой сделки.

Как я могу это закодировать? Я сделаю оповещение (PopUp), после того, как сделка достигнет TakeProfit с ним.

С наилучшими пожеланиями,

halobungie
Причина обращения: