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

 
TarasBY:

Вот один из возможных вариантов в поиске тикетов N последних закрытых ордеров, причём искомые ордера можно фильтровать по типу (BUY, SELL) и по профитности (убыточные, прибыльные):

После вызова функции fGet_TicketsLastCloseOrd(), а она вернёт количество найденных по заданным параметрам тикетов, можно (я бы делал) делать проверку с заданным количеством тикетов (fi_NUM) и возвращённым функцией значением. Все собранные тикеты будут в передаваемом в функцию по ссылке массиве.

И в таком варианте не важно сколько искать этих последних тикетов. :)

А если Вам нужен профит по этим последним закрытым ордерам, то тогда ещё проще:


научите этим пользоваться практически?

допустим мне нужно получить суммарный профит 12 последних закрытых позиций? куда в том коде мне надо вписать цифру 12 ? 

я пробовал так

      Print (fGet_TicketLastClosePos(-2,0,iTime (NULL, PERIOD_D1, 0)),fGet_TicketsLastCloseOrd(12,0),fGet_ProfitLastCloseOrd(12,-2));

 пишет '0' - incompatible types


 
hoz:

А с чего бы то вдруг iOpen() выкачивает данные с сервера? В документации написано же, что возвращает значение.. Значит всё-таки возвращает, а не выкачивает.

С того бы... что тут скажешь, как тут объяснишь, что такое горы тем, кто живет в степи...
 
hoz:

Zhunko:
Integer:

Во всех этих обсуждениях и попытках выяснить истину меня, деликатно выражаясь, крайне сильно смущает (в действиях ищущих) и возмущает (в бездействии разработчиков) факт того, что приходится даже опытным программистам чего-то додумывать, экспериментировать, тратить силы и время на то, что по определению должно быть открытым, прозрачным и справочным материалом разработчика. Чтобы подобных "а может...", "а не может..." в принципе не возникало. Это как же так нужно организовать работу с пользователями, чтобы даже после денных и ночных обсуждений истина так и оставалась неопределенной и неведомой! - Меня это поражает низким уровнем подхода к работе и неуважением к пользователям.

Сказать что-то положительное в этой связи не имею к МетаКвотс.

Старающимся пользователям - респекты, за старания.

Но профессиональным такой подход назвать не могу, увы. Ни тех, ни других. Почему это у тех и других происходит - это уже другой вопрос. Но это удручает, честно говоря.

Почему нету источника где однозначно и ясно давались бы ответы на подобные вопросы? Если он есть, то где он? и почему до сих пор идут не констатации а эксперименты?
 
lottamer:


научите этим пользоваться практически?

допустим мне нужно получить суммарный профит 12 последних закрытых позиций? куда в том коде мне надо вписать цифру 12 ? 

я пробовал так

 пишет '0' - incompatible types


Для последних 12-ти закрытых ордеров:
double ld_Profit = fGet_ProfitLastCloseOrd (12);
Print (ld_Profit);
 
Chiripaha:

Во всех этих обсуждениях и попытках....

Это интернет, здесь всегда найдутся люди, которые будут доказывать, что солнце встает на западе, а садится на востоке, то, что ночью светло, а зимой темно, что 2 х 2 = 5 и т.д.

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

 
TarasBY:
Для последних 12-ти закрытых ордеров:

что-то там не так. Показывает -0,28 вместо -3,68
 
Integer:

Это интеренет, здесь всегда найдутся люди, которые будут доказывать, что солнце встает на западе, а садится на востоке, то, что ночью светло, а зимой темно, что 2 х 2 = 5 и т.д.

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

Споры и обсуждения, в том числе и в интернете, - это прекрасно. Если они касаются не справочных фактов. А там, где разработчик определи - "это вот так" - спорить не о чем.

И Вы, Дмитрий, к огромному сожалению, правы, что такие люди находятся. Но это как раз и говорит об отсутствии профессионализма.

Это разработчик может исследовать, экспериментировать, ставить опыты и подбирать лучшие варианты реализации. А ПОЛЬЗОВАТЕЛЬ-Профессионал должен квалифицированно и умело использовать то, что уже создали другие и не рыскать и искать, иначе он становится не пользователем а разработчиком, ученым, исследователем (а это совсем разные задачи), а с помощью разработанного созидать другие вещи, реализовывать другие задачи. Иначе это топтание на месте получится.

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

 
lottamer:

что-то там не так. Показывает -0,28 вместо -3,68
Если правильно написана фильтрация своих ордеров, которую я Вам предложил написать и Вы учитываете в своих расчётах комиссию и свопы, то всё работает правильно.
Файлы:
 

Здравствуйте. Как побороть утечку памяти при вызове индикатора с параметрами? Например я вызываю ZigZag(25,5,35) в индикаторе(или в советнике на каждом тике):

double ZigZag(int index){

   return(iCustom(NULL,0,"ZigZag",0,25,5,35,index));

} 

При этом терминал жутко тормозит и зависает. Происходит это при использовании любого индикатора через iCustom с указанием входных параметров.

Идет жесткая утечка памяти. Как с этим бороться?) 

 
Как сделать, чтобы программа выдавала уровень ЕМА в качестве цены? Допустим ЕМА1 с периодом (1), ЕМА2 с периодом (0), ЕМА1 равняется 1.3321, а ЕМА2 на текущий период 1.3200. Необходимо, чтобы результат выражения (ЕМА1-ЕМА2) равнялся 0,0121. При запуске скрипта для проверки алерт показывает значение ноль, а надо чтобы "0,0121". Как решить эту задачу?
Причина обращения: