MODE_TICKVALUE -- ВРЕТ!!!! :)

 

Почему на EURUSD MODE_POINT равен нулю, а на USDJPY все нармально? Я что-то новое пропустил? :)


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

То что это размер минимального изменения цены инструмента в валюте депо я прочитал. Но полученную цифру ни как не пойму.


И еще до кучи -


Если MODE_TICKSIZE - Минимальный шаг изменения цены инструмента в валюте котировки. Иными свовами это та величина на которую может измениться цена.

Если MODE_POINT - это просто цена некой величины в которой что-то там измеряется.

И TICK_SIZE и POINT измеряются в валюте котировки. Я могу конечно себе представить, что минимальное изменение цены может быть меньше поинта.

Но что такое TICKVALUE, что-то не догоняю. Если это стоимость TICKSIZE'а то цифры не сходятся.

 
SProgrammer >>:

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


То что это размер минимального изменения цены инструмента в валюте депо я прочитал. Но полученную цифру ни как не пойму.


Есть мнение, на форуме что это на обьеме в один лот. Нда - ха-ха.

Ну ладно но почему на демо счете ODL-MT4 Demo, по EURUSD MODE_POINT = 0 !!! Мне не понятно.

 
SProgrammer писал(а) >>

По умолчанию вывод до 4-х значащих знаков, а надо 5. Необходимо предварительно преобразовывать с помощью DoubleToStr();

 
Vinin >>:

По умолчанию вывод до 4-х значащих знаков, а надо 5. Необходимо предварительно преобразовывать с помощью DoubleToStr();

:) Ну точно. А я с запасом ставил 99 знаков. :)


Ок! Спасибо!

 

Мучуюсь-мучуюся... Ну не хрена не сходится. :)


Наверняка тут есть спецы которые эти вещи щелкают как орешки ... Обьясните если не трудно.


Надо вычеслить MODE_TICKVALUE, для скажем USDJPY ( для простоты )


По таким параметрам


ASK = 98.802

BID = 98.78

LOTSIZE = 100000

POINT = TICKSIZE = 0.001


Валюта депозита USD.


*************


Итого как считаю я. Но не сходится. Хочу понять почему.



Пара k=B/C... B это базовая валюта, С = это валюта котировки, k это сама котировка.


B=USD

C=JPY


C1 - С2 = TICKSIZE это по определению есть "изменение цены инструмента в ВАЛЮТЕ КОТИРОВКИ. То есть в JPY.


Теперь чтобы получить TICKVALUE это "Минимальное изменения цены инструмента в валюте депозита", надо всего лишь из JPY перейти к USD так как депозит в USD. То есть взять ASK.



Если TICKSIZE = 0,001 и ASK = 98.802 => 0.001/98.802 = 1,0121E-5 получили USD . Теперь надо (???) умножить на LOTSIZE = 1E5 => Получаем 1.0121 ...


Круто, запускаю тестер и запрашиваю MODE_TICKVALUE, MODE_ASK, MODE_BID, MODE_TICKSIZE MODE_LOTSIZE, получаю


MODE_TICKVALUE=1.09965031

MODE_ASK = 98.802

MODE_BID = 98.78

MODE_TICKSIZE = 0.001

MODE_LOTSIZE = 100000

****


Ну и где я туплю? Обьясните плз. :)

 
Ну Знатоки, и просто кто хочет доконца понять что да как. ну правда - подскажите.
 

как-то у тебя все запутано..

чтобы получить стоимость 1.0 лота USDJPY в валюте депозита нужно просто получить значение MarketInfo("USDJPY",MODE_TICKVALUE)


зачем какие выкрутасы с асками и бидами когда оно и так доступно ? или я чего-то не понимаю ?

 
keekkenen >>:

как-то у тебя все запутано..

чтобы получить стоимость 1.0 лота USDJPY в валюте депозита нужно просто получить значение MarketInfo("USDJPY",MODE_TICKVALUE)


зачем какие выкрутасы с асками и бидами когда оно и так доступно ? или я чего-то не понимаю ?

Дык, а оно не верно считается. :) Типа расходится с ручным расчетом. Или я что-то не так считаю.


Почему именно одного лота. В определнии MODE_TICKVALUE про это ничего нет.

 

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

 
keekkenen >>:

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

Я конечно же и это прочитал.

Вы сообственно не могли бы выполнить расчет MODE_TICKVALUE


По тому как вы это понимате.

 
Тут вовсю использовал MODE_TICKVALUE. Работет корректно.
Причина обращения: