Проверим
int result=MessageBox(msg,title,MB_OK|MB_ICONINFORMATION);
Print("MessageBox ",result);
Первый раз возращается 1.
Последующие разы возращается 0.
Print("MessageBox ",result);
Первый раз возращается 1.
Последующие разы возращается 0.
Спасибо. Причину нашли и устранили. Как раз сегодня будем выкладывать исправленный билд.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Build 208 (21 Aug 2007). Исходник скрипта "Инфо"
// Инфо.mq4 // Скрипт // Информация о счете и свойства символа #property copyright "mandorr@gmail.com" #include <WinUser32.mqh> void start() { string сurrency=AccountCurrency(); double deposit; double withdrawal; for (int i=0; i<HistoryTotal(); i++) { if (!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) break; double openprice=OrderOpenPrice(); double closeprice=OrderClosePrice(); double profit=OrderProfit(); if (openprice>0) continue; if (closeprice>0) continue; if (profit>0) deposit+=profit; if (profit<0) withdrawal+=-profit; } string symbol=Symbol(); string base=StringSubstr(symbol,0,3); string market; int margin_mode=MarketInfo(symbol,MODE_MARGINCALCMODE); switch (margin_mode) { case 0 : market="Forex" ; break; case 1 : market="CFD" ; break; case 2 : market="Futures"; break; case 3 : market="Indexes"; break; } string StopOutUnit; if (AccountStopoutMode()==0) {StopOutUnit="%";} else {StopOutUnit=AccountCurrency();} double ask=MarketInfo(symbol,MODE_ASK); double bid=MarketInfo(symbol,MODE_BID); double margin_free=AccountFreeMargin(); double margin_buy=MarketInfo(symbol,MODE_MARGINREQUIRED); if (margin_buy<0) margin_buy=0; double margin_sell=margin_buy; if (base!=сurrency && ask>0) margin_sell=NormalizeDouble(margin_buy*bid/ask,2); double lots_buy =0; double lots_sell=0; if (margin_buy >0 && margin_free>0) lots_buy =margin_free/margin_buy ; if (margin_sell>0 && margin_free>0) lots_sell=margin_free/margin_sell; double lots_min=MarketInfo(symbol,MODE_MINLOT); double lots_max=MarketInfo(symbol,MODE_MAXLOT); double lots_step=MarketInfo(symbol,MODE_LOTSTEP); int count_buy =0; if (lots_step>0) count_buy =lots_buy /lots_step; int count_sell=0; if (lots_step>0) count_sell=lots_sell/lots_step; lots_buy =lots_step*count_buy ; if (lots_buy <lots_min) {lots_buy =0;} lots_sell=lots_step*count_sell; if (lots_sell<lots_min) {lots_sell=0;} double tick_value=MarketInfo(symbol,MODE_TICKVALUE); double swap_buy =0; if (lots_min>0) swap_buy =MarketInfo(symbol,MODE_SWAPLONG )/lots_min; double swap_sell=0; if (lots_min>0) swap_sell=MarketInfo(symbol,MODE_SWAPSHORT)/lots_min; double swap_buy_ticks =0; if (tick_value>0) swap_buy_ticks =swap_buy /tick_value; double swap_sell_ticks=0; if (tick_value>0) swap_sell_ticks=swap_sell/tick_value; string type="Реал"; if(IsDemo()) type="Демо"; string field=" "; string msg="" +"Компания: "+AccountCompany()+field +"\n"+"Имя владельца счета: "+AccountName()+field +"\n"+"Тип счета: "+type+". Сервер: "+AccountServer()+field +"\n"+"Номер счета: "+AccountNumber()+field +"\n"+"Валюта счета: "+сurrency+field +"\n"+"Плечо: "+AccountLeverage()+field +"\n"+"Уровень Stop Out: "+AccountStopoutLevel()+" "+StopOutUnit+field +"\n"+"Пополнение баланса: "+DoubleToStr(deposit,2)+" "+сurrency+field +"\n"+"Снятие с баланса: "+DoubleToStr(withdrawal,2)+" "+сurrency+field +"\n"+"Баланс: "+DoubleToStr(AccountBalance(),2)+" "+сurrency+field +"\n"+"Средства: "+DoubleToStr(AccountEquity(),2)+" "+сurrency+field +"\n" +"\n"+"Символ: "+symbol+" ("+market+")"+field +"\n"+"Свободно лотов для BUY : "+DoubleToStr(lots_buy,2)+field +"\n"+"Свободно лотов для SELL: "+DoubleToStr(lots_sell,2)+field +"\n"+"Залог за 1 лот для BUY : "+DoubleToStr(margin_buy ,2)+" "+сurrency+field +"\n"+"Залог за 1 лот для SELL: "+DoubleToStr(margin_sell,2)+" "+сurrency+field +"\n"+"Своп за 1 лот для BUY : "+DoubleToStr(swap_buy,2)+" "+сurrency+" ("+DoubleToStr(swap_buy_ticks,2)+" pips)"+field +"\n"+"Своп за 1 лот для SELL: "+DoubleToStr(swap_sell,2)+" "+сurrency+" ("+DoubleToStr(swap_sell_ticks,2)+" pips)"+field +"\n"+"Шаг изменения цены лота: "+DoubleToStr(tick_value,2)+" "+сurrency+" (1 pips)"+field +"\n"+"Минимальный лот: "+DoubleToStr(lots_min,2)+field +"\n"+"Максимальный лот: "+DoubleToStr(lots_max,2)+field +"\n"+"Шаг изменения лота: "+DoubleToStr(lots_step,2)+field +"\n"+"Пункт: "+DoubleToStr(MarketInfo(symbol,MODE_POINT),MarketInfo(symbol,MODE_DIGITS))+field +"\n"+"Точность: "+DoubleToStr(MarketInfo(symbol,MODE_DIGITS),0)+field +"\n"+"Спред: "+DoubleToStr(MarketInfo(symbol,MODE_SPREAD),0)+field +"\n"+"Уровень стопов: "+DoubleToStr(MarketInfo(symbol,MODE_STOPLEVEL),0)+field ; string title="Информация о счете и свойства символа"; MessageBox(msg,title,MB_OK|MB_ICONINFORMATION); } // End