[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 419

 
Vinin:

Современные видеокарты позволяют подключать два монитора. Можно поставить две видеокарты, тогда можно подключить четыре

И не современные тоже, любая AGP карта (кроме самых древних) позволяет подключить два моника.
 

Доброго времени суток.Люди, кто-нибудь, помогите разобраться с функцией WindowScreenShot. 3-й день никто не отвечает((. Написал скрипт следующего содержания (см. приложенный файл).

В 2 словах о скрипте. Скрипт предназначен для создания скриншотов текущего графика окна клиентского терминала.Во внешней переменной extern datetime Время_бара задается время бара, начиная с которого и вплоть до нулевого бара будет создан скриншот (с учетом правого отступа на графике). В строке

int bar_number=iBarShift(NULL,0,Время_бара,true)

ищется порядковый номер бара, заданного во внешней переменной строкой extern datetime Время_бара. И уже непосредственно в самой функции, в строке

bool f=WindowScreenShot(name+".gif",1024,768,bar_number,Масштаб,Вид_графика)

Теперь собственно вопрос... Для простоты предположим, что надо создать скриншот двух последних баров. Тогда, если строку

int bar_number=iBarShift(NULL,0,Время_бара,true)

оставить без изменений, то получим такой скриншот


То есть ни одного бара на скриншоте нет (хотя в строке

int bar_number=iBarShift(NULL,0,Время_бара,true)

должен был быть вычислен номер бара по времени)

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

int bar_number=iBarShift(NULL,0,Время_бара,true)+2

то получим тот скриншот, к-й и хотели:

Вопрос: почему в случае, если эта строка строка имеет вид

int bar_number=iBarShift(NULL,0,Время_бара,true)

скриншот делается со сдвигом на 2 бара вправо от заданного в вышеуказанной строке?

P.S. Чтобы не захламлять форум, заранее благодарю за ответ
Файлы:
 
Vinin:

Да, если конечно нулевой бар на часовиках начался.

а можно ли использовать в качестве определения что бар начался такую функцию с параметрами:

int min=1;
int sec=59;

if ( TimeMinute(TimeCurrent())==m && TimeSeconds(TimeCurrent())==n)

{

если да то ставится отложка

}

 
stater:

а можно ли использовать в качестве определения что бар начался такую функцию с параметрами:

int min=1;
int sec=59;

if ( TimeMinute(TimeCurrent())==m && TimeSeconds(TimeCurrent())==n)

{

если да то ставится отложка

}


Конечно можно, но если сделок будет значительно меньше запланированного, можно будет поискать другое условие
 
7777877:

Доброго времени суток.Люди, кто-нибудь, помогите разобраться с функцией WindowScreenShot. 3-й день никто не отвечает((. Написал скрипт следующего содержания (см. приложенный файл).

В 2 словах о скрипте. Скрипт предназначен для создания скриншотов текущего графика окна клиентского терминала.Во внешней переменной extern datetime Время_бара задается время бара, начиная с которого и вплоть до нулевого бара будет создан скриншот (с учетом правого отступа на графике). В строке

int bar_number=iBarShift(NULL,0,Время_бара,true)

ищется порядковый номер бара, заданного во внешней переменной строкой extern datetime Время_бара. И уже непосредственно в самой функции, в строке

bool f=WindowScreenShot(name+".gif",1024,768,bar_number,Масштаб,Вид_графика)

Теперь собственно вопрос... Для простоты предположим, что надо создать скриншот двух последних баров. Тогда, если строку

int bar_number=iBarShift(NULL,0,Время_бара,true)

оставить без изменений, то получим такой скриншот


То есть ни одного бара на скриншоте нет (хотя в строке

int bar_number=iBarShift(NULL,0,Время_бара,true)

должен был быть вычислен номер бара по времени)

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

int bar_number=iBarShift(NULL,0,Время_бара,true)+2

то получим тот скриншот, к-й и хотели:

Вопрос: почему в случае, если эта строка строка имеет вид

int bar_number=iBarShift(NULL,0,Время_бара,true)

скриншот делается со сдвигом на 2 бара вправо от заданного в вышеуказанной строке?

P.S. Чтобы не захламлять форум, заранее благодарю за ответ

А отщелкните ка предварительно "смещение баров" в терминале.
 
FAQ:

А отщелкните ка предварительно "смещение баров" в терминале.

Отщелкнул... Результат тот же:

БЕЗ "+2":


Со значением "+2" в строке int bar_number=iBarShift(NULL,0,Время_бара,true):


Примечание: вертикальной красной линией слева (последний скриншот графика) отмечен тот бар, начиная с которого и хотелось снять скриншот, но без "+2" в строке int bar_number=iBarShift(NULL,0,Время_бара,true).

P.S. у меня уже просто крыша начинает уезжать(((

 
В самом деле... мой совет - примите это к сведению как фичу и юзайте, если сильно напрягает - пишите в сервис дек.
 
FAQ:
В самом деле... мой совет - примите это к сведению как фичу и юзайте, если сильно напрягает - пишите в сервис дек.
Извините, но я только недавно занялся программированием, поэтому плохо знаком пока со слэнгом. Фича - это видимо глюк... прошу пояснить "термины" юзайет и сервис дек. )))
 

Фича - особенность, небольшое несоответствие, которое впрочем особо не мешает, а иногда даже предоставляет не документированные возможности, например OrderClosePrice() - если закрыть ордер с этоим параметром в цене закрытия, то он закроется, не надо заморачиваться с определением цены по типам ордеров.

Баг - ошибка в программе (неисправимая фича)

Сервидек - место куда пользователи пишут письма с найденными багами. Находится на пятом форуме в вашем профиле (нужна дополнительная регистрация)

 
7777877:

Отщелкнул... Результат тот же:

БЕЗ "+2":


Со значением "+2" в строке int bar_number=iBarShift(NULL,0,Время_бара,true):


Примечание: вертикальной красной линией слева (последний скриншот графика) отмечен тот бар, начиная с которого и хотелось снять скриншот, но без "+2" в строке int bar_number=iBarShift(NULL,0,Время_бара,true).

P.S. у меня уже просто крыша начинает уезжать(((




Все правильно снимает, у тебя Время_бара=D'2012.10.04 14:00' это 33 бар на часовом графике, +2 35 бар, как-то так.

Я тоже хотел-бы увидеть такой скриншот..... от красной линии.

Причина обращения: