Скачать MetaTrader 5

Расчет прибыли при открытии ордера???

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
AT-2000
120
AT-2000  

Добрый день!!!

Я дилетант!!!

1. Прошу разъяснить есть Ask и Bid

Что из них Close[0] и Open[0] или какая связь или разница (обыскал всю документацию так и не нашел)

2. Можно ли както расчитать прибыль для еще не открытого ордера

т.е.

2.1 Покупка

Прибыль=(Bid*Point)-(Ask*Point+MarketInfo(Symbol(), MODE_SPREAD));

или

Прибыль=(Close[0]*Point)-(Open[0]*Point+MarketInfo(Symbol(), MODE_SPREAD));???

2.2 Продажа

Прибыль=Ask*Point+MarketInfo(Symbol(), MODE_SPREAD)-(Bid*Point);

или

Прибыль=Open[0]*Point+MarketInfo(Symbol(), MODE_SPREAD)-(Close[0]*Point);???


Какие еще нужно учесть данные через MarketInfo чтобы точнее был расчет

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

Ahmad Mehdiyev
478
Ahmad Mehdiyev  
Как Вы думаете почему Вам не отвечают? Уверяю, это не потому что вы, как сами сказали, дилетант.
Просто запретив давать вам самый нужный для вас совет Вы ограничили число ответов до 0 !

Хотел было вам что-либо посоветовать, но в вашем посте ТАКОЕ количество ошибок что даже не знаю с чего начать.
Вам нужно начать с определений.
AT-2000
120
AT-2000  
pro_:
Как Вы думаете почему Вам не отвечают? Уверяю, это не потому что вы, как сами сказали, дилетант.
Просто запретив давать вам самый нужный для вас совет Вы ограничили число ответов до 0 !

Хотел было вам что-либо посоветовать, но в вашем посте ТАКОЕ количество ошибок что даже не знаю с чего начать.
Вам нужно начать с определений.

Спасибо за хоть какой нибудь ответ!!!

Давайте с определений

Bid -Последняя известная цена покупки (предложение на покупку) текущего инструмента.

Ask -Последняя известная цена продажи (запрашиваемая цена) текущего инструмента.

Point - Размер пункта текущего инструмента в валюте котировки.

Close[0] - Массив-таймсерия, содержащий цены закрытия каждого бара текущего графика.Текущий бар, самый последний в массиве, имеет индекс 0.

MarketInfo(Symbol(), MODE_SPREAD) -информацию о финансовых инструментах, перечисленных в окне "Обзор рынка" в частности Спрэд в пунктах

Итак мне нужно просчитать прибыль при начале открытия ордера. т.е. Получить те-же данные которые отражаются в терминале по открытым ордерам, но до открытия

Boris
3896
Boris  

Как можно рассчитать ещё неубитого медведя? И предполагать бесмысленно! Изучайте учебник, документацию, там и расчёт лота узнаете!

Boeing747
241
Boeing747  
AT-2000:

Спасибо за хоть какой нибудь ответ!!!

Давайте с определений

Bid -Последняя известная цена покупки (предложение на покупку) текущего инструмента.

Ask -Последняя известная цена продажи (запрашиваемая цена) текущего инструмента.

Point - Размер пункта текущего инструмента в валюте котировки.

Close[0] - Массив-таймсерия, содержащий цены закрытия каждого бара текущего графика.Текущий бар, самый последний в массиве, имеет индекс 0.

MarketInfo(Symbol(), MODE_SPREAD) -информацию о финансовых инструментах, перечисленных в окне "Обзор рынка" в частности Спрэд в пунктах

Итак мне нужно просчитать прибыль при начале открытия ордера. т.е. Получить те-же данные которые отражаются в терминале по открытым ордерам, но до открытия

на момент открытия ордера прибыль будет такая:

  extern int N = 1; // количество минимальных лотов 

   Alert( N * MarkeInfo( Symbol(),TICKVALUE ) * MarketInfo( Symbol(),MODE_MINLOT ) * ( Ask - Bid ) / MarketInfo( Symbol(),MODE_TICKSIZE ) );
AT-2000
120
AT-2000  
Boeing747:

Спасибо я понял свою ошибку по лоту, просто лот это параметр не влияющий на качество прибыли, это количественный показатель, поэтому я его машинально опустил, извините.

Ответ достаточный.

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

Boeing747
241
Boeing747  
AT-2000:

Спасибо я понял свою ошибку по лоту, просто лот это параметр не влияющий на качество прибыли, это количественный показатель, поэтому я его машинально опустил, извините.

Ответ достаточный.

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

Если честно я не знаю тех сложных формул при помощи которых можно определить стоимость тика какой либо пары не содержащей валюты депозита. Я всегда пользовался функциями МarketInfo() чтобы узнать что мне нужно. Вашу задачу я бы решил так. Сперва нашел бы стоимость тика в валюте депозита для вашей пары а потом бы помножал стоимость тика на расстояние выраженное в тиках между ценой входа в рынок и ценой Bid

стоимость тика на лот равна :

double tv = MarketInfo( Symbol(), MODE_TICKVALUE );

минимальный лот равен :

double ml = MarketInfo( Symbol(), MODE_MINLOT );

стоимость тика для минимального лота равна ;

double tvm = tv * ml;

размер тика в поинтах или в количестве поинтов или в пипсах;

double ti = MarketInfo( Symbol(), MODE_ TICKSIZE );

расстояние в тиках равно :

int x = ( price - Bid ) / ti;

где price это цена открытия ордера;

прибыль на минимальный лот равна:

double p = tvm * x;

pako
3319
pako  
AT-2000:

Добрый день!!!

Я дилетант!!!

1. Прошу разъяснить есть Ask и Bid

Что из них Close[0] и Open[0] или какая связь или разница (обыскал всю документацию так и не нашел)

2. Можно ли както расчитать прибыль для еще не открытого ордера

т.е.

2.1 Покупка

Прибыль=(Bid*Point)-(Ask*Point+MarketInfo(Symbol(), MODE_SPREAD));

или

Прибыль=(Close[0]*Point)-(Open[0]*Point+MarketInfo(Symbol(), MODE_SPREAD));???

2.2 Продажа

Прибыль=Ask*Point+MarketInfo(Symbol(), MODE_SPREAD)-(Bid*Point);

или

Прибыль=Open[0]*Point+MarketInfo(Symbol(), MODE_SPREAD)-(Close[0]*Point);???


Какие еще нужно учесть данные через MarketInfo чтобы точнее был расчет

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




улыбнуло
Boris
3896
Boris  

AT-2000

... в идеале подошла формула при открытии ордера сразу с доходом.

Поделитесь формулой! Пожалуйста!

AT-2000
120
AT-2000  
Boeing747:

Если честно я не знаю тех сложных формул при помощи которых можно определить стоимость тика какой либо пары не содержащей валюты депозита. Я всегда пользовался функциями МarketInfo() чтобы узнать что мне нужно. Вашу задачу я бы решил так. Сперва нашел бы стоимость тика в валюте депозита для вашей пары а потом бы помножал стоимость тика на расстояние выраженное в тиках между ценой входа в рынок и ценой Bid

стоимость тика на лот равна :

double tv = MarketInfo( Symbol(), MODE_TICKVALUE );

минимальный лот равен :

double ml = MarketInfo( Symbol(), MODE_MINLOT );

стоимость тика для минимального лота равна ;

double tvm = tv * ml;

размер тика в поинтах или в количестве поинтов или в пипсах;

double ti = MarketInfo( Symbol(), MODE_ TICKSIZE );

расстояние в тиках равно :

int x = ( price - Bid ) / ti;

где price это цена открытия ордера;

прибыль на минимальный лот равна:

double p = tvm * x;


Спасибо очень точно ответили
AT-2000
120
AT-2000  
borilunad:

AT-2000

... в идеале подошла формула при открытии ордера сразу с доходом.

Поделитесь формулой! Пожалуйста!


Кому вопрос
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий