Ваши вопросы по языку MQL4


Ugar

Эксперт
Привет.
Что нужно дописать в советник что бы он открывал ордер соразмерно балансу?

Например:
при
$100 лот 0.06
$200 лот 0.12
$500 лот 0.3
$1000 лот 0.6
$1200 лот 0.78
$1500 лот 0.9
$2000 лот 1.2
$3000 лот 1.8
$5000 лот 3.0
$10000 лот 6.0
Простейший вариант
lot=NormalizeDouble(AccountBalance()*0.0006,2);
 

_SERG_

Бывалый
У меня такой вопрос?
Думаю коль вы пишите советники, то наверное для вас ответить плевое дело или хоть укажите что почитать или где написано. Весь поиск перерыл одна реклама форекса
(
Суть такова, я пишу или пробую писать советник, сигналы беру на новостях, все это обрабатываю в питоне, получается некая картинка и график. Теперь вопрос с знатокам, в каком формате мне сохранить данные чтоб их можно было локально увидеть во вкладке сигналы на торговой платформе М4 или М5.
Если есть вариант какой то иной, типа есть советник который читает сделки из файла, то тоже пойдет.. Под него нарисую. мне важно знать формат входных данных, какой вид список, кортеж или как то еще, чтоб вывести данные именно такого вида. И еще знать бы как их впихнуть в торговый терминал. Всем спасибо большое.
Ugar ответил на твой вопрос, но можно и дополнить его ответ, раз дело плевое. :D

Вариант 1, средствами терминала МТ4/5 через файловые операции. Можно с преобразованиями в строковые, или через структуры, или строковые поля с разделителями, или бинарные данные с побайтовой разборкой, в общем есть варианты. Выбирай, что ближе к телу. Ну и эта комбинация через песочницу.

Вариант 2, тоже через файловые операции, но с использованием PIPE, это и за пределы песочницы работает. На питоне на сколько я помню файловыми операциями проблем нет, ну и как следствие с PIPE, тоже не будет. Разве что для винды PIPE сервер написать, и запускать его как сервис.

Вариант 3, через API, в этом случае и в песочницу, и за песочницу, и по TCP и UDP, и за фаервол, по сетке хоть куда. Правда криптонуть придется, все что в сетку пойдет, если о конфиденциальности не забывать, и на приемной стороне раскриптовать можно будет.

Искать, все в доке и на сайте метаквотовцев или майкрософт, в зависимости от направления поиска.
Инфы вполне достаточно для решения разных задач.
 

incomeasset

Специалист
int start () {
bool(mostrarGraficoHorario enHorario);
if (gi_160) ajustarTrailingStopTodas(gi_164, gi_168);
if (g_time_448 == 0 || Repetir) {
abrirPosiciones();
g_time_448 = Time[0];
}
return (0);
}

выдает такую ошибку Скажите пожалуйста как это исправить кто знает
'(' - name expected
 

_SERG_

Бывалый
int start () {
bool(mostrarGraficoHorario enHorario);
if (gi_160) ajustarTrailingStopTodas(gi_164, gi_168);
if (g_time_448 == 0 || Repetir) {
abrirPosiciones();
g_time_448 = Time[0];
}
return (0);
}

выдает такую ошибку Скажите пожалуйста как это исправить кто знает
'(' - name expected
Дык, выдает ещё строку и колонку в которой эта ошибка возникла.
А вообще на декомпилах, тем более старых, тренероваться не стоит. Ничему не научишся , а время потратишь.
А так, по простому, так скобки "(" не хватает, скорее всего здесь посредине :"bool(mostrarGraficoHorario )( enHorario);" Или запятушки, "," между "mostrarGraficoHorario" и "enHorario".
 

incomeasset

Специалист
Дык, выдает ещё строку и колонку в которой эта ошибка возникла.
А вообще на декомпилах, тем более старых, тренероваться не стоит. Ничему не научишся , а время потратишь.
А так, по простому, так скобки "(" не хватает, скорее всего здесь посредине :"bool(mostrarGraficoHorario )( enHorario);" Или запятушки, "," между "mostrarGraficoHorario" и "enHorario".
int start() {
bool"mostrarGraficoHorario" "enHorario"?());
if (gi_160) ajustarTrailingStopTodas(gi_164, gi_168);
if (g_time_448 == 0 || Repetir) {
abrirPosiciones();
g_time_448 = Time[0];
}
return (0);
}

Спасибо за помощь изменил но теперь новая ошибка появилась
'mostrarGraficoHorarioenHorario' - name expected
 

_SERG_

Бывалый
int start() {
bool"mostrarGraficoHorario" "enHorario"?());
if (gi_160) ajustarTrailingStopTodas(gi_164, gi_168);
if (g_time_448 == 0 || Repetir) {
abrirPosiciones();
g_time_448 = Time[0];
}
return (0);
}

Спасибо за помощь изменил но теперь новая ошибка появилась
'mostrarGraficoHorarioenHorario' - name expected
Лучше на такое поменяй: " // bool(mostrarGraficoHorario enHorario); "

Давно в теме?
 

incomeasset

Специалист
Лучше на такое поменяй: " // bool(mostrarGraficoHorario enHorario); "

Давно в теме?
int start() {
" // bool(mostrarGraficoHorario enHorario); "
if (gi_160) ajustarTrailingStopTodas(gi_164, gi_168);
if (g_time_448 == 0 || Repetir) {
abrirPosiciones();
g_time_448 = Time[0];
}
return (0);
}

недавно насчёт темы

спасибо Вот ещё одна ошибка,
'if' - semicolon expected
 

_SERG_

Бывалый
int start() {
" // bool(mostrarGraficoHorario enHorario); "
if (gi_160) ajustarTrailingStopTodas(gi_164, gi_168);
if (g_time_448 == 0 || Repetir) {
abrirPosiciones();
g_time_448 = Time[0];
}
return (0);
}

недавно насчёт темы

спасибо Вот ещё одна ошибка,
'if' - semicolon expected
Ты не обижайся, но созрел вопрос, как у тебя с образованием? Ты в курсе что такое знаки препинания и пунктуация?

***
Пунктуация - это:
  1. Система знаков препинания
  2. Раздел языкознания, изучающий знаки препинания и правила их употребления на письме
В общеобразовательной программе изучается 10 знаков препинания: точка (.), вопросительный знак (?), восклицательный знак (!), многоточие (...), запятая (,), точка с запятой (;), двоеточие (:), тире (-), скобки (круглые) ( ), кавычки (" "). Знаки препинания служат для обозначения в предложении и в тексте границ смысловых отрезков, значение которых особо подчеркивается пишущим. Знаки препинания обеспечивают пишущему и читающему однозначное понимание предложения и текста.
Теперь по теме:
Исправь на:
// bool(mostrarGraficoHorario enHorario);

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

Как то сказал одному персонажу по телефону :" Поставь двоеточие туда то.....", он говорит нет не работает!
Приезжаю, смотрю, стоит ".." вместо ":", вот такие пирожки. :D
 

incomeasset

Специалист
Ты не обижайся, но созрел вопрос, как у тебя с образованием? Ты в курсе что такое знаки препинания и пунктуация?

***
Пунктуация - это:
  1. Система знаков препинания
  2. Раздел языкознания, изучающий знаки препинания и правила их употребления на письме
В общеобразовательной программе изучается 10 знаков препинания: точка (.), вопросительный знак (?), восклицательный знак (!), многоточие (...), запятая (,), точка с запятой (;), двоеточие (:), тире (-), скобки (круглые) ( ), кавычки (" "). Знаки препинания служат для обозначения в предложении и в тексте границ смысловых отрезков, значение которых особо подчеркивается пишущим. Знаки препинания обеспечивают пишущему и читающему однозначное понимание предложения и текста.
Теперь по теме:
Исправь на:
// bool(mostrarGraficoHorario enHorario);

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

Как то сказал одному персонажу по телефону :" Поставь двоеточие туда то.....", он говорит нет не работает!
Приезжаю, смотрю, стоит ".." вместо ":", вот такие пирожки. :D
Спасибо заработала Я просто новый в этом языке есть ещё одна ошибка Если захотите помочь чтобы смог получить ex4 файл

if (OperarSiempre? 0 : ){

'if' - expression expected ошибка
 

_SERG_

Бывалый
Спасибо заработала Я просто новый в этом языке есть ещё одна ошибка Если захотите помочь чтобы смог получить ex4 файл

if (OperarSiempre? 0 : ){

'if' - expression expected ошибка
Выглядит как недописанный тернарный оператор

if (OperarSiempre ? 0 : 1){
//--- тело условия
}

А какой язык ты до этого знал?
 

incomeasset

Специалист
Выглядит как недописанный тернарный оператор

if (OperarSiempre ? 0 : 1){
//--- тело условия
}

А какой язык ты до этого знал?
if (OperarSiempre? 0 : ){
l_text_4 = "Cargando datos...";
if (ObjectFind(gs_horario_424) == -1) {
ObjectCreate(gs_horario_424, OBJ_LABEL, 0, 0, 0);
ObjectSet(gs_horario_424, OBJPROP_CORNER, 2);
ObjectSet(gs_horario_424, OBJPROP_XDISTANCE, 20);
ObjectSet(gs_horario_424, OBJPROP_YDISTANCE, 10);
ObjectSetText(gs_horario_424, l_text_4, 14, "Times New Roman", Lime);
}

вот весь kод пожалуйста,а насчёт языка программирования пока ни одного зто первый
 

_SERG_

Бывалый
if (OperarSiempre? 0 : ){
l_text_4 = "Cargando datos...";
if (ObjectFind(gs_horario_424) == -1) {
ObjectCreate(gs_horario_424, OBJ_LABEL, 0, 0, 0);
ObjectSet(gs_horario_424, OBJPROP_CORNER, 2);
ObjectSet(gs_horario_424, OBJPROP_XDISTANCE, 20);
ObjectSet(gs_horario_424, OBJPROP_YDISTANCE, 10);
ObjectSetText(gs_horario_424, l_text_4, 14, "Times New Roman", Lime);
}

вот весь kод пожалуйста,а насчёт языка программирования пока ни одного зто первый
Думаю в твоем случае было бы правильно начать с документации, примеров кода, ну и некой идеи, для которой все это требуется.
 

Ugar

Эксперт
чет не запускается так
Не проверял. Но сейчас проверил. Вписал строчку в скрипт, нормально компилируется и работает.
Вероятно проблема не в строчке, а в том куда она вставлена.
 

Вложения

Qwant

Новичок
Не проверял. Но сейчас проверил. Вписал строчку в скрипт, нормально компилируется и работает.
Вероятно проблема не в строчке, а в том куда она вставлена.
Советник не мой. параметры я могу поменять различные. Вставил то что вы написали. А что дальше и куда я не знаю) на MT4
 

Ugar

Эксперт
Советник не мой. параметры я могу поменять различные. Вставил то что вы написали. А что дальше и куда я не знаю) на MT4
Если совсем никак в программировании, надо обратиться к тому то хоть чуть понимает и переделывает советники. а лучше к автору советника. Наверняка он и без моих подсказок справится.
 

Qwant

Новичок
Если совсем никак в программировании, надо обратиться к тому то хоть чуть понимает и переделывает советники. а лучше к автору советника. Наверняка он и без моих подсказок справится.
говорит все это он может легко сделать, но говорит учи язык.
 
Последнее редактирование модератором:

Ugar

Эксперт
говорит все это он может легко сделать, но говорит учи язык.
Если дома сломался телик, это не причина осваивать ремонт телевизоров. Проще обратиться к тому кто это умеет.
Стоит изучать ремонт теликов если их потом надо чинить много. Или если просто интересно как это работает.
То же и с программированием. Стоит изучать если интересно или нужно много программировать, а не для того что бы встроить строчку в советник.
 
Последнее редактирование модератором:

Qwant

Новичок
Если дома сломался телик, это не причина осваивать ремонт телевизоров. Проще обратиться к тому кто это умеет.
Стоит изучать ремонт теликов если их потом надо чинить много. Или если просто интересно как это работает.
То же и с программированием. Стоит изучать если интересно или нужно много программировать, а не для того что бы встроить строчку в советник.
Да. Он гений и все такое, но не программист. Собрал боевого советника и больше ничего не хочет)
 

Онлайн статистика

Пользователи онлайн
82
Гости онлайн
97
Всего посетителей
179

Статистика

Гостевая
Help Users
  • Джамиль:
    Помогите с шиfрованием свечей в МТ4,они некорректно показаны
    Цитата
  • Геша5:
    Джамиль если не обновляются котировки или не корректно показывают,то все вопросы к брокеру.
    Цитата
  • Дмитрий007:
    может то ренко вообще :ROFLMAO:
    Цитата
  • (Guest) SamuraQZ:
    всем добрый вечер
    Цитата
  • (Guest) SamuraQZ:
    хотел спросить, я вот недавно начал торговать в компании Instaforex, есть ли какие нибудь отзывы о нем? или где вы сами торгуете
    Цитата
  • (Guest) SamuraQZ:
    просто на всех форумах пишут обо всех ДЦ Форекс что они все мошенники, даже не знаю кому верить
    Цитата
  • Дмитрий007:
    в инсте самые убогие условия
    Цитата
  • Дмитрий007:
    имхо, но forex4you вроде норм щас, fxopen ниче должен быть, был классный fortfs, но испаганился в корень
    Цитата
  • Геша5:
    SamuraQZ сказал(а):
    хотел спросить, я вот недавно начал торговать в компании Instaforex, есть ли какие нибудь отзывы о нем? или где вы сами торгуете
    Есть конечно отзывы для всех брокеров.На форуме есть темы про рекомендуемых брокеров,на которых торгуют и без существеных претензий...
    Цитата
  • doperst:
    (Guest) SamuraQZ, с Инстой не стоит связываться. Работал там лично. Сначала кинули на партнерские, потом на ребейтинг, а потом два счета просто перестали существовать. По копейкам выводят, чуть приличная сумма - начинаются проблемы, вплоть до обнуления счетов.
    +2
    Цитата
  • doperst:
    А так вы правы, 98% форекс брокеров зарабатывают на потерях своих клиентов. Именно поэтому менеджеры достают вас своими звонками, брокеры дают бонусы и якобы «удваивают» депозиты. Форекс в Российской Федерации не регулируются законодательством. Налог на доход трейдеров есть, а сам процесс торговли никем не контролируется. Теоретически, любой брокер может делать с котировками (графиком) что угодно и когда угодно. Этот факт мошенничества с его стороны очень тяжело доказать. Поэтому есть смысл работать только с теми форекс-брокерами, которые дорожат своей репутацией.
    +1
    Цитата
  • ЛИС151:
    Здоров народ из старых кто заходит ??? сюда
    Цитата
  • ANDR77:
    Ужас! Кто в Инсте еще торгует? Мрак полный.......бегите отдуда!!!!
    Цитата
  • ANDR77:
    Лет 7 назад от них убежал- ..... не пожалел ни на копейку))))
    Цитата
  • ANDR77:
    Как дела в мире? Люди?!
    Цитата
  • jouri:
    Мире не знаю ,а у меня ОК
    Цитата
  • jouri:
    (y)На счёт доверия брокерам 12 лет с форекс-фою дружу , и всегда выводил без проблем, вот вчера вывел 500 баков ,несколько часов рассматривали заявку и перевели на карту.Хотя отзывов об этом брокере в последние 2-3 года как под копирку негативные. Я даже сам чють в это не поверил ,так красиво обсирают. Так .что верить на слово не стоит надо, всё самим проверять.Думаю пока продолжать с ними дружить .Если чё сами можете попробывать вывод денег , это не реклама , а подсказка для тех кто разочаровался в ДЦ.;)
    Цитата
  • Denis1231999:
    РЕБЯТ А ПОДСКАЖИТЕ КАК ПОЛУЧИТЬ КЛЮЧ К ИНДИКАТОРУ MONEY GES
    Цитата
  • jouri:
    Вы ещё торгуете индикаторами ...... В топку их все и проблем не будет с ключами.Торгуйте так-- это просто, но реально будете в плюсе, ставите магд и смотрите его , пересечение с нулём ,,нулевые точки , , если вход по магду снизу баем, профит на предыдущую вершину магда которая на истории в положительной зоне, это направление ,а тонкости сами надеюсь увидеть можно в процессе торговли ,посмотрите внимательно на историю этих горбов на магде. Желательно таймы повыше от м30 до Н4.
    Цитата
  • track:
    фигасе
    Цитата
  • track:
    а какие еще схемы, ведь макд это тоже индикатор
    Цитата
  • erex:
    Давайте все же отделять мух от ... других мух. Есть индикаторы, обрабатывающие график - кривые, косые, средние и полусредние. Есть информаторы - новости, данные с мухокниги и ФХбли, с СМЕ и оанды. И есть статистика - атр, пивоты, пр. Мухи получаются очень разные.
    Цитата
  • garry119:
    Denis1231999 сказал(а):
    РЕБЯТ А ПОДСКАЖИТЕ КАК ПОЛУЧИТЬ КЛЮЧ К ИНДИКАТОРУ MONEY GES
    это параболик. вопрос тейков только решить
    Цитата
  • track:
    неправильно нарисованы профиты
    Цитата
  • track:
    работает только система эллиота
    Цитата
    Верх