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

 
MrPip:
Я использовал это в других советниках, и это работает правильно.

Я проверяю закрытые сегодня сделки вместо открытых сегодня.

Использование в начале работы следующее

if (LastTradeClosedToday()) return(0);

// код здесь для открытия новых сделок

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

//| LastTradeClosedToday |.

//| Проверяем историю, чтобы узнать, закрылась ли последняя сделка сегодня |

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

bool LastTradeClosedToday()

{

int cnt, total;

bool Closed;

total = HistoryTotal();

for (cnt = total - 1; cnt >= 0; cnt--)

{

OrderSelect (cnt, SELECT_BY_POS, MODE_HISTORY);

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

if (OrderMagicNumber() != MagicNumber) continue;

Закрыто = false;

if (OrderType() == OP_BUY)

{

if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent()))

{

Closed = true;

}

cnt = 0;

}

if (OrderType() == OP_SELL)

{

if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent()))

{

Closed = true;

}

cnt = 0;

}

}

return (Closed);

}

Хорошо, я попробую. Спасибо, мистер Пипс. Вы мне очень помогли.

 

Проблема решена

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

Я решил свою проблему сам, из-за глупой ошибки. Спасибо всем, кто прочитал эту тему.

 

Вы уже конвертировали его?

Beno:
Спасибо Mr Pips Разобрался

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

Индикатор прилагается:

 
makemo8:
Возможно ли превратить этот индикатор в советника. Я думал, что Бено пытается это сделать. Я буду благодарен всем, кто это сделал или может сделать, если вы опубликуете версию этого индикатора для советника. Большое спасибо Индикатор прилагается:

Упс! Индикатор, который нужно преобразовать в советника - MT4-LevelStop-Reverse-vB0-4.mq4

Файлы:
 

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

У меня есть советник для торговли прорывами - каждый вечер я должен загружать файлы с уровнями прорывов на следующий день.

Мой вопрос: Как я могу сделать так, чтобы советник сам искал файлы пресетов, а не делал это сам?

Пример: я загружаю файлы пресетов на ftp, советник знает адрес и каждый день в 22:00 файлы пресетов загружаются с этого адреса.

Возможно ли это?

Спасибо

 

Вопросы по программированию

У меня есть пара быстрых вопросов:

1. Предположим, я торгую GBPUSD на 15-минутных графиках. Функция start() в моем советнике вызывается только тогда, когда становится доступен новый бар (каждые 15 минут) или каждый раз, когда появляется новая котировка (может быть каждые несколько секунд)?

2. Предположим, в определенное время я размещаю два ордера: один - бай-стоп, скажем, на 20 пунктов выше текущей цены, другой - селл-стоп на 20 пунктов ниже текущей цены. Если цена поднимется до моего бай-стопа, я хочу отменить селл-стоп, как только подтвержу, что ордер бай-стоп сработал. Аналогично, если цена опустится до моего стопа на продажу, я хочу отменить стоп на покупку, как только подтвержу, что стоп на продажу сработал.

Есть ли простой способ сделать это? Как мне подтвердить, что стоп покупки сработал, прежде чем отменить стоп продажи? Предусмотрена ли в системе какая-то функция обратного вызова ордера, которая позволит мне узнать, что ордер сработал? Или я просто должен позволить функции start() продолжать проверять наличие открытых ордеров каждую котировку и определять это таким образом?

Спасибо

 
westofpluto:
У меня есть пара быстрых вопросов:

1. Предположим, я торгую GBPUSD на 15-минутных графиках. Вызывается ли функция start() в моем советнике только тогда, когда становится доступен новый бар (каждые 15 минут), или это происходит каждый раз, когда появляется новая котировка (может быть, каждые несколько секунд)?

2. Предположим, в определенное время я размещаю два ордера: один - бай-стоп, скажем, на 20 пунктов выше текущей цены, другой - селл-стоп на 20 пунктов ниже текущей цены. Если цена поднимется до моего бай-стопа, я хочу отменить селл-стоп, как только подтвержу, что ордер бай-стоп сработал. Аналогично, если цена опустится до моего стопа на продажу, я хочу отменить стоп на покупку, как только подтвержу, что стоп на продажу сработал.

Есть ли простой способ сделать это? Как мне подтвердить, что стоп покупки сработал, прежде чем отменить стоп продажи? Предусмотрена ли в системе какая-то функция обратного вызова ордера, которая позволит мне узнать, что ордер сработал? Или я просто должен позволить функции start() продолжать проверять наличие открытых ордеров каждую котировку и определять это таким образом?

Спасибо

1. Функция Start() вызывается на каждом тике

2. Да, это возможно. Это можно сделать более чем одним способом. Вы можете установить стоп покупки и стоп продажи, затем вызвать функцию OrderType( ), если она возвращает OP_BUY или OP_SELL, вы можете использовать OrderDelete( ), чтобы удалить существующий отложенный ордер.

 

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

if (LastTradeOpenToday()) return ();

bool LastTradeOpenToday()

{

int cnt, total;

bool Opened;

total = HistoryTotal();

for (cnt = total - 1; cnt >= 0; cnt--)

{

OrderSelect (cnt, SELECT_BY_POS, MODE_TRADES);

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

if (OrderMagicNumber() != Magic_Number) continue;

Opened = false;

if (OrderType() == OP_BUY)

{

if (TimeDay(OrderOpenTime()) >= TimeDay(TimeCurrent()))

{

Opened = true;

}

cnt = 0;

}

if (OrderType() == OP_SELL)

{

if (TimeDay(OrderOpenTime()) >= TimeDay(TimeCurrent()))

{

Opened = true;

}

cnt = 0;

}

}

return (Opened);

}
 

Математический дифференциал

Подскажите, пожалуйста, как можно ввести новый индикатор на основе математического дифференциала или интеграла?

Я ищу формулу, которая переводит индикатор в математический дифференциал или интеграл.

 

файлы csv

дорогие друзья

мне нужен индикатор для сохранения CSV файлов вместо использования "ctrl+s".

спасибо

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