Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Продавай время процессора и заработай!
Forex Trader
114252
Forex Trader 2006.06.27 17:45 
По всем парам рассчет сделал, кроме этих двух. Помогите плиз формулкой.

CADJPY
CHFJPY
Forex Trader
114252
Forex Trader 2006.06.27 17:52  
Forex Trader
114252
Forex Trader 2006.06.27 20:08  
Залог за 1 лот = 100000/leverage по курсу для
USDCAD
USDCHF
Для покупки использовать Ask. Для продажи использовать Bid.

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

Скрипт Инфо.mq4 http://forum.alpari-idc.ru/attachment.php?attachmentid=24380
Forex Trader
114252
Forex Trader 2006.06.27 22:38  
Я решил так:

M_AUDJPY=MarketInfo("AUDJPY",MODE_LOTSIZE)/Leverage*((MarketInfo("AUDUSD",MODE_ASK)+MarketInfo("AUDUSD",MODE_BID))/2);
M_AUDUSD=MarketInfo("AUDUSD",MODE_LOTSIZE)/Leverage*((MarketInfo("AUDUSD",MODE_ASK)+MarketInfo("AUDUSD",MODE_BID))/2);
M_CADJPY=MarketInfo("CADJPY",MODE_LOTSIZE)/Leverage*((MarketInfo("USDCAD",1/MODE_ASK)+MarketInfo("USDCAD",1/MODE_BID))/2);
M_CHFJPY=MarketInfo("CHFJPY",MODE_LOTSIZE)/Leverage*((MarketInfo("USDCHF",1/MODE_ASK)+MarketInfo("USDCHF",1/MODE_BID))/2);
M_EURAUD=MarketInfo("EURAUD",MODE_LOTSIZE)/Leverage*((MarketInfo("EURUSD",MODE_ASK)+MarketInfo("EURUSD",MODE_BID))/2);
M_EURCAD=MarketInfo("EURCAD",MODE_LOTSIZE)/Leverage*((MarketInfo("EURUSD",MODE_ASK)+MarketInfo("EURUSD",MODE_BID))/2);
M_EURCHF=MarketInfo("EURCHF",MODE_LOTSIZE)/Leverage*((MarketInfo("EURUSD",MODE_ASK)+MarketInfo("EURUSD",MODE_BID))/2);
M_EURGBP=MarketInfo("EURGBP",MODE_LOTSIZE)/Leverage*((MarketInfo("EURUSD",MODE_ASK)+MarketInfo("EURUSD",MODE_BID))/2);
M_EURUSD=MarketInfo("EURUSD",MODE_LOTSIZE)/Leverage*((MarketInfo("EURUSD",MODE_ASK)+MarketInfo("EURUSD",MODE_BID))/2);
M_EURJPY=MarketInfo("EURJPY",MODE_LOTSIZE)/Leverage*((MarketInfo("EURUSD",MODE_ASK)+MarketInfo("EURUSD",MODE_BID))/2);
M_GBPCHF=MarketInfo("GBPCHF",MODE_LOTSIZE)/Leverage*((MarketInfo("GBPUSD",MODE_ASK)+MarketInfo("GBPUSD",MODE_BID))/2);
M_GBPJPY=MarketInfo("GBPJPY",MODE_LOTSIZE)/Leverage*((MarketInfo("GBPUSD",MODE_ASK)+MarketInfo("GBPUSD",MODE_BID))/2);
M_GBPUSD=MarketInfo("GBPUSD",MODE_LOTSIZE)/Leverage*((MarketInfo("GBPUSD",MODE_ASK)+MarketInfo("GBPUSD",MODE_BID))/2);
M_USDCAD=MarketInfo("USDCAD",MODE_LOTSIZE)/Leverage;
M_USDCHF=MarketInfo("USDCHF",MODE_LOTSIZE)/Leverage;
M_USDJPY=MarketInfo("USDJPY",MODE_LOTSIZE)/Leverage;
Forex Trader
114252
Forex Trader 2006.06.27 23:46  
Средняя цена может не дать нужной точности. Скажем, если захочешь открыть максимально доступное число лотов. Нужно для покупки использовать курс MarketInfo(base+сurrency,MODE_ASK), для продажи - курс MarketInfo (base+сurrency,MODE_BID). А в остальном правильных ход мыслей.

Здесь
base - базовая валюта пары (первые три буквы),
сurrency - валюта счета, обычно USD.

Если base=сurrency, то использовать курс=1. Для USDCHF, USDJPY, USDCAD, и т.д.
Forex Trader
114252
Forex Trader 2006.06.28 00:12  
Спасибо за поддержку. Но сверх точность до центов мне не нужна. И громоздить код не хочется.
Forex Trader
114252
Forex Trader 2006.06.28 01:27  
Точность не бывает сверх. Точность бывает X знаков. Программирование не оперирует примерными понятиями. Оно оперирует истинными и ложными понятиями. - "Седня ты прогрешность дал, а завтра родину продал" (© Л.П.Берия).
Forex Trader
114252
Forex Trader 2006.06.28 06:33  
Точность не бывает сверх. Точность бывает X знаков. Программирование не оперирует примерными понятиями. Оно оперирует истинными и ложными понятиями. - "Седня ты примерно определил курс валюты, завтра родину продал" (© Л.П.Берия).



Потешил. Спасибо.
Для моей задачи достаточная точность.
Forex Trader
114252
Forex Trader 2006.06.30 21:15  
Только скорее будет
M_CHFJPY=Lot*MarketInfo("CHFJPY",MODE_LOTSIZE)/AccountLeverage()*2/(MarketInfo("USDCHF",MODE_ASK)+MarketInfo("USDCHF",MODE_BID));
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий