Страница 9 из 10
#201

Есть индикатор. В его аллерт необходимо встроить функцию нажатия клавиатуры
есть кусок скрипта
[SPOILER]
#include
#define VK_I 0x24
void start() {
int handle=WindowHandle(Symbol(),Period());
PostMessageA(handle,WM_KEYDOWN,VK_I,0);
}


Куда его всунуть в аллерте чтобы заработал?
[SPOILER]
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
ObjectsDeleteAll();
//----
return(0);
}




void printmyline(double vala, int topbottom) //print target line
{
vala = NormalizeDouble(vala,4);
if(topbottom==1)//target


{
ObjectCreate("theentry " + vala,OBJ_HLINE,0,0,vala);
ObjectSet("theentry " + vala,OBJPROP_COLOR, Blue);
ObjectSetText("theentry " + vala,"Buy",13,"Arial",Black);

if (alert)
Alert("Buy",tf," ",Symbol());
text = StringConcatenate("Buy",13, tf," ",Symbol());


}
if(topbottom==2)//stop
{
ObjectCreate("thestop " + vala,OBJ_HLINE,0,0,vala);
ObjectSet("thestop " + vala,OBJPROP_COLOR, Blue);
ObjectSetText("thestop " + vala,"Buy",13,"Arial",Black);
}
#include
#define VK_I 0x24
void start() {
int handle=WindowHandle(Symbol(),Period());
PostMessageA(handle,WM_KEYDOWN,VK_I,0);
}
Вот так не работает))
}


void printmylinedown(double vala, int topbottom) //print target line
{
vala = NormalizeDouble(vala,4);
if(topbottom==1)//target
{
ObjectCreate("theentry " + vala,OBJ_HLINE,0,0,vala);
ObjectSet("theentry " + vala,OBJPROP_COLOR, Red);
ObjectSetText("theentry " + vala,"Sell",13,"Arial",Black);

if (alert)
Alert("Sell",tf," ",Symbol());
text = StringConcatenate("Sell",13, tf," ",Symbol());

}
if(topbottom==2)//stop
{
ObjectCreate("thestop " + vala,OBJ_HLINE,0,0,vala);
ObjectSet("thestop " + vala,OBJPROP_COLOR, Red);
ObjectSetText("thestop " + vala,"Sell",13,"Arial",Black);
} #include
#define VK_Y 0x24
void start() {
int handle=WindowHandle(Symbol(),Period());
PostMessageA(handle,WM_KEYDOWN,VK_Y,0);
}
И так тоже!
}

void deletealllines()
{
ObjectsDeleteAll();
}

Изменено 6 октября, 2017 пользователем Alexfouly

#202

Добрый день.
Помогите изменить скрипт. Надо чтобы данный скрипт наоборот торговал.

Script

main(){
var OpenTime,MA;
MA=Point("MA",0);
if(Balance()==0){
if(SymbolLastChange(1,0)>SymbolLastChange(-1,0)){
if(Bid()>MA+GetGlobVar("OpenLevel")){
Sell(TradeQnty());
SetGlobVar("Time",DateTime(0));
}
if(Offer() Buy(TradeQnty());
SetGlobVar("Time",DateTime(0));
}
}
}
else{
OpenTime=GetGlobVar("Time");
if(DateTime(0)-OpenTime>GetGlobVar("Duration")){
if(Balance()>0){
if(Bid()>MA+GetGlobVar("CloseLevel")){
Close();
}
}
else{
if(Offer() Close();
}
}
}
}
}

Изменено 9 февраля, 2018 пользователем 0ll

#203

Надо чтобы данный скрипт наоборот торговал.

Поменяйте местами Buy и Sell
#204

DreamWorks,

У меня 3 версия стала загружать трейды но на графике я их не вижу. Пробовал менять бэкграунд не помогает.
Спасибо!

#205

Здравствуйте! хочу попросить сделать простой скрипт для установки 3-х уровней

MT4
все пары все тайм фреймы

1-й Максимум предыдущего дня
2-й Минимум вчерашнего дня
3-й закрытие предыдущего дня (не открытие нового)

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


#206

1-й Максимум предыдущего дня
2-й Минимум вчерашнего дня
3-й закрытие предыдущего дня (не открытие нового)



Имеются индикаторы.

Yesterday_Day_HiLo.mq46 скач.
Yesterday_OHLCMedian.mq46 скач.

Изменено 15 марта, 2018 пользователем Dob3RmaNn

#207

Возможно ли поправить скрипт? Не устанавливает значение уровня, устарел наверное:

Спойлер

хттпс://www.mql5.com/ru/code/9208

#208

Уважаемые коллеги! Установила в МТ4 интересный для меня скрипт линий Фибоначчи. Теперь при вызове стандартного скрипта - открывается новый. Подскажите, пожалуйста, как в мт4 сохранить 2 скрипта линий Фибоначчи: один - "родной" мт4, второй - по желанию. Чтобы каждый раз при его вызове не производить настройки, а выбрать необходимый в данный момент. Заранее признательна за подсказку.

#209

Индикатор? А вызываете как? Думаю, что стандартные объекты невозможно заменить.
Опишите подробнее, что делаете, и что хотелось бы получить в результате.

#210

machine, спасибо, что откликнулись. Причина, думаю, в индикаторе YURAZ_CreateDualFibo . Прилагаю. Установила его на график и удалила. После этого стандартный Фибо открывается в формате данного индикатора. Как сохранить стандартный Фибо?

YURAZ_CreateDualFibo.mq44 скач.

Изменено 5 октября, 2018 пользователем iloirin

#211

Ребят кто понимает в програмировании посмотрите скрипт. Скрипт выставляет отложенные ордера (сетка и пирамидинг). Перестали работать функции отложенных ордеров СеллСтоп и СеллЛимит... Может кто починит...

Pending_Orders_Master.mq43 скач.
Скрипт.png

Изменено 21 марта, 2019 пользователем Ховик

#212

Может кто починит...

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

Пример_выст.PNG
Pending_Orders_Master.mq49 скач.

#213

Приветствую! Пользуюсь простым и удобным для меня скриптом Stop Order для выставления отложенных ордеров. Единственный минус - нет возможности прописать комментарий к ордеру как при открытии нового ордера вручную через терминал. Можете подправить скрипт?

Stop_Order.rar4 скач.
1.png

#215

///

Изменено 17 декабря, 2019 пользователем fxalek

#216
2 часа назад, fxalek сказал:

Нужно написать простой скрипт на CodeBase есть похожий но его нужно доработать,

Очень похоже на ТЗ..
А кому слабо? :)

#217
20 минут назад, usver73 сказал:

Очень похоже на ТЗ..
А кому слабо? :)

Но радует, что человек заранее знает, что скрипт простой и нефиг делать.:)

#218

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

Аннотация 2019-12-20 121249.png

Кто может. пожалуйста, скорректируйте их. Заранее благодарен.

ExportProperties.mq43 скач.

Изменено 20 декабря, 2019 пользователем shkarupin.vi

#219

@shkarupin.vi Проблема в строках

Save(file_handle, s_symbol+"_SPREAD="+i_spread);

Save(file_handle, s_symbol+"_LOT_MIN="+d_lot_min);
Save(file_handle, s_symbol+"_LOT_MAX="+d_lot_max); и т.д.

  • вариант 1

меняете i_spread на IntegerToString(i_spread)

меняете d_lot_min на IntegerToString(d_lot_min)

меняете d_lot_max на IntegerToString(d_lot_max)

  • вариант 2

меняете i_spread на (string)i_spread

меняете d_lot_min на (string)d_lot_min

меняете d_lot_max на (string)d_lot_max

#220

@MikR0ReR 

Вариант 1 без изменений, ошибок нет

Save(file_handle, s_symbol+"_SPREAD="+IntegerToString(i_spread));
Save(file_handle, s_symbol+"_LOT_MIN="+IntegerToString(d_lot_min));
Save(file_handle, s_symbol+"_LOT_MAX="+IntegerToString(d_lot_max));

Вариант 2 без изменений, ошибок нет

Save(file_handle, s_symbol+"_SPREAD="+(string)i_spread);
Save(file_handle, s_symbol+"_LOT_MIN="+(string)d_lot_min);
Save(file_handle, s_symbol+"_LOT_MAX="+(string)d_lot_max)

А предупреждения остались.

Может вы сами исправите, а то я ничего не понимаю.

Изменено 20 декабря, 2019 пользователем shkarupin.vi

#221

@shkarupin.vi Что значит без изменений? Пришлите код что у вас получилось.

Повторяю! Проблема в строках:

Save(file_handle, s_symbol+"_SPREAD="+i_spread);

Save(file_handle, s_symbol+"_LOT_MIN="+d_lot_min);
Save(file_handle, s_symbol+"_LOT_MAX="+d_lot_max);

. еще строка

. еще строка

. и т.д.

  • вариант 1
  • я тут по торопился и накосячил, значит int переменные преобразовываем через IntegerToString(), а double через DoubleToString()

меняете i_spread на IntegerToString(i_spread) получится Save(file_handle, s_symbol+"_SPREAD="+IntegerToString(i_spread));

меняете d_lot_min на DoubleToString(d_lot_min) получится Save(file_handle, s_symbol+"_LOT_MIN="+DoubleToString(d_lot_min));

меняете d_lot_max на DoubleToString(d_lot_max) получится Save(file_handle, s_symbol+"_LOT_MAX="+DoubleToString(d_lot_max));

. еще строка

. еще строка

. и т.д.

  • вариант 2
  • универсальный

меняете i_spread на (string)i_spread получится Save(file_handle, s_symbol+"_SPREAD="+(string)i_spread);

меняете d_lot_min на (string)d_lot_min получится Save(file_handle, s_symbol+"_LOT_MIN="+(string)d_lot_min);

меняете d_lot_max на (string)d_lot_max получится Save(file_handle, s_symbol+"_LOT_MAX="+(string)d_lot_max);

. еще строка

. еще строка

. и т.д.

#222

@MikR0ReR

Вариант 2 я вам скопировал выше, а с вариантом 1 шлю код.

ExportProperties (1).mq44 скач.

#223

Ну и в чем проблема? Вижу что получается у вас. Продолжайте дальше.

Изменено 20 декабря, 2019 пользователем MikR0ReR

#225
  1. Зачем мне проверять если компилятор ошибок и предупреждений не выдал, это его задача проверять!
  2. Посмотрел, с виду все правильно.
Страница 9 из 10

Для публикации сообщений создайте учётную запись или авторизуйтесь

Перейти к списку тем
Форум · 2.0.20260627.0025