[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 195
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
помогите пожалуйста с двумя простейшими скриптами которые открывают
отложенные ордера на buy и sell с установлеными стоплос и тейкпрофит на заданном
растоянии от текущей цены. Как то чудом написал один работающий
но случайно удалил и теперь не могу вспомнить что я сделал что бы он работал.
на вас одна надежда...
sell:
int start(){
OrderSend(Symbol(),OP_SELLSTOP,0.01,Bid-20*Point,3,Bid+50*Point,Bid-50*Point);
return(0);
}
и buy
int start()
{
OrderSend(Symbol(),OP_BUYSTOP,0.01,Ask+20*Point,3,Bid+50*Point,Bid-50*Point);
return(0);
}
помогите пожалуйста...
Всем привет!
Сегодня упражняюсь со временем.) Например, нужно заставить индикатор что-нибудь делать в определенное время.
Код будет следующий:
Теперь, допустим, хочется, чтобы наш условие отрабатывало не только 21.30, но и в 22.00, 22.30, 23.00, ну и так далее...
Можно конечно сделать следующим образом:
Но мне кажется это как-то нерационально, особенно если будет много контрольных точек. Думаю можно и попроще.
Вопрос, как это сделать проще(правильнее) ?)
Здесь все завит от того поддаются ли временные условия какому-нибудь закону, есть ли закономерность. Например для Вашего случая, каждые полчаса: if (TimeCurrent()%1800==0) {тра-та}. Если логики в этих временных точках нет - Ваш вариант. Только мне он не нравится, это строгое равенство, Емли в эту минуту минуту не будет тика - советник условие пропустит...
Т.е. проверять на остаток от деления получается. Но мне кажется, что в таком случае всегда будет остаток...
Со строгим равенством полностью согласен, ещё не додумал. В принципе, можно наверно сделать что-нибудь наподобие интервала, например 16.00 - 16.03.
Но суть как раз заключалась в том, чтобы он один раз в полчаса делал расчеты и спать ложился. Чтобы систему не грузить не нужными расчетами постоянно.
Т.е. проверять на остаток от деления получается. Но мне кажется, что в таком случае всегда будет остаток...
Ну да, Вы правы, лучше так: if (TimeCurrent()%1800<60) {тра-та}.
Ну да, Вы правы, лучше так: if (TimeCurrent()%1800<60) {тра-та}.
< 0.6, или что-нибудь еще в этом роде. Остаток от деления всегда меньше единицы :)
А если всё-таки через большое количество переменных наподобие:
Сильно это плохо? или покатит?
И ещё маленький вопрос, если допустим я задам интервал (например 16.00-16.03) для выполнения условия. Как сделать так, чтобы он его выполнял только один раз, несмотря на приход новых тиков???
1. Есть такой тип данных: datetime. Если хочется экзотики, то можно для времени применять int, но double - это уже экстрим.
2. Отмотайте страниц 5-10 назад: там написано, как сделать то, чего Вам хочется.
Здравствуйте.
Помогите, пожалуйста, откорректировать код.
Обе приведённые ниже строчки глючат.
Заранее благодарю.
Сама прога:
1. Есть такой тип данных: datetime. Если хочется экзотики, то можно для времени применять int, но double - это уже экстрим.
2. Отмотайте страниц 5-10 назад: там написано, как сделать то, чего Вам хочется.
1. Ну здесь double был применен только для сложения минут и часов. чтобы можно было обозначать контрольные точки в виде HH.MM (например 16.23).
2. Посмотрел последние страницы, там конечно есть про datetime, но не совсем то. Там просто делают вывод в формате HH.MM время последнего ордера.