Пожелания для МТ5 - страница 54

 
Interesting:

Нужны изменения в базовом классе? На мой взгляд это легко может каждый сделать в потомке базового класса (в соответствии с собственной логикой).

Кроме того, а где "мясо" этих самых методов (к примеру реализованное в виде наследника от CTrade)?

Да, мне тоже кажется, что трудновато каждому такое провернуть. По поводу содержимого этих методов, у меня его нет, пока, разработчики, думаю, определят его наполненность правильно, их опыт позволяет. Если в общем виде, то мне видится возможность работать не с лотами, а с разами. Т.е. увеличить объем позиции в 2 раза, или в 1,2 раза. То же самое для сокращения. С переворотом, видится возможность перевернуть позицию с таким же результирующим объемом позиции, как и до переворота, или с другим, большим или меньшим. Идея в новых удобных методах-обертках, позволяющих при управлении капиталом использовать математические функции(оперировать разами при управлении объемом позиции).
 
Yedelkin:
Не каждый. Даже не каждый программист. А только знающий особенности ООП.

При желании 90% из присутствующих тут форумчан смогут. Если конечно в справку по языку не поленятся заглянуть.

-Alexey-:
Да, мне тоже кажется, что трудновато каждому такое провернуть. По поводу содержимого этих методов, у меня его нет, пока, разработчики, думаю, определят его наполненность правильно, их опыт позволяет. Если в общем виде, то мне видится возможность работатль не с лотами, а с разами. Т.е. увеличить объем позиции в 2 раза, или в 1,2 раза. То же самое для сокращения. С переворотом, видится возможность перевернуть позицию с таким же результирующим объемом позиции, как и до переворота, или с другим, большим или меньшим. Идея в новых удобных методах-обертках, позволяющих при управлении капиталом использовать математические функции(оперировать разами при управлении объемом позиции).

Отдельная ветка про изменения в CTrade (в общем виде) + мат. модели + код (хоть как шаблон).

Желательно еще в виде отдельного модуля с потомком базового объекта.

Если разработчики найдут там основу для включения в стандартный модуль, обязательно сделают это, а пока только в виде потомка (поскольку понятия и код не стандартизированы).

ИМХО

 
Interesting:

При желании 90% из присутствующих тут форумчан смогут. Если конечно в справку по языку не поленятся заглянуть.

ИМХО

 Речь шла не о "присутствующих тут форумчанах" и не об их желаниях. А об утверждении "каждый". - Ну да фиг с ним, и так всё понятно.

Что касается поднятого вопроса. Рядовому потребителю гораздо проще научиться пользоваться чем-то типа Готовый_Класс::Функция_Готового_Класса, чем самому создавать "потомков базового класса". 

 
Yedelkin:

 Речь шла не о "присутствующих тут форумчанах" и не об их желаниях. А об утверждении "каждый".

Что касается поднятого вопроса. Рядовому потребителю гораздо проще научиться пользоваться чем-то типа Готовый_Класс::Функция_Готового_Класса, чем самому создавать "потомков базового класса". 

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

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

Что касается данных методов, то подобные вещи я прописывал в классе "Эксперт" (в воем классе), и там определял всю логику работы.

PS

Подобные вещи были реализованные по подобию CSampleExpert в стандартном MACD Sample.

Там есть функционал по открытию и закрытию, почему также не добавить и предложенные вещи?

 bool LongClosed();
 bool ShortClosed();
 bool LongModified();
 bool ShortModified();
 bool LongOpened();
 bool ShortOpened();
 
Interesting:

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

Понятно! Универсальность способствует стабильности.

Насчёт того, относятся ли предложения от -Alexey-  к категории "универсальных вещей", ничего сказать пока не могу. Но, повторюсь: рядовому пользователю нужны понятные и работающие функции, а не их категоризация профессиональными программистами.

 
Interesting:

PS

Подобные вещи были реализованные по подобию CSampleExpert в стандартном MACD Sample.

Там есть функционал по открытию и закрытию, почему также не добавить и предложенные вещи?

Согласитесь, что если человек не знает ООП, то Ваш пример мало о чём говорит ему.
 
Yedelkin:
Согласитесь, что если человек не знает ООП, то Ваш пример мало о чём говорит ему.

Согласен что нет, но это к вопросу где и как прописывать тот или иной функционал.

Тем более что стандартная библиотека по прежнему развивается и у разработчиков там свои планы и интересы.

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
Interesting:

... стандартная библиотека по прежнему развивается и у разработчиков там свои планы и интересы.

Так ведь ветка-то так и называется "Пожелания...", и планам разработчиков предложение от -Alexey- никак помешать не может :)

 
Yedelkin:

Так ведь ветка-то так и называется "Пожелания...", и планам разработчиков предложение от -Alexey- никак помешать не может :)

Ну не знаю, я в предложении конкретики не вижу, может разработчики увидят.

Но я все таки не пойму что и как "переворачивать" и "урезать", и почему именно в CTrade?

Хотя, стандартная библиотека на текущей стадии своего развития меня не сильно волнует, поскольку у меня свой набор классов (который никак не зависит от стандартной библиотеки).

 
Yedelkin:

Понятно! Универсальность способствует стабильности.

Насчёт того, относятся ли предложения от -Alexey-  к категории "универсальных вещей", ничего сказать пока не могу. Но, повторюсь: рядовому пользователю нужны понятные и работающие функции, а не их категоризация профессиональными программистами.

Если говорить об универсальности, то желательно иметь возможность менять объем позиции не только в разах, но и в лотах. Т.е. примерно так:

1) Открывается позиция определенным лотом: PositionOpen(...,лот,....); /эта функция однозначна и не меняется, остается как сейчас/

2) Меняется объем позиции, например, увеличивается:

а) PositionIncrease(..., 2, mode_lot_change,....) - увеличить объем позиции на 2 лота; /для случая, когда удобно менять в лотах/

б) PositionIncrease(..., 2, mode_multiply_change,....) - увеличить объем позиции в 2 раза; /для случая, когда удобно менять в разах/


Но я все таки не пойму что и как "переворачивать" и "урезать", и почему именно в CTrade?

В CTrade есть набор методов, по справке: "Операции с позициями". Там есть открытие позиции, закрытие позиции, изменение SL или TP позиции. Предлагается его дополнить. Переворачивать позицию - это означает совершить противоположную сделку большим объемом, чем текущий, чтобы направление открытой позиции изменилось на противоположное. Сокращать позицию - это уменьшать объем открытой позиции. Увеличивать - наоборот.

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

Да, это очень важный момент.
Причина обращения: