Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Простите, что надоедаю, но еще один вопрос: почему нельзя строить iMAOnArray(value1........k), если значения value1 принимают то положительное, то отрицательное значение, допустим такие: 1, 3, 4, -5, -1, 2 или если можно, то можно спросить как ?
А почему вы, собственно, считаете, что так делать нельзя? Чем докажете? :-)
Попробуйте код:
Все работает и выдает что-то достаточно интересное :-)
А почему вы, собственно, считаете, что так делать нельзя? Чем докажете? :-)
Попробуйте код:
Все работает и выдает что-то достаточно интересное :-)
МЕГАЖЕСТЬ!!!!!!!!
А я всю жизнь, точнее уже как начал писать, думал что такое нельзя делать О_о Ого-го, оказывается можно О_о
СПАСИБО ОГРОМНОЕ!!! А ТО МНЕ ПРИШЛОСЬ ПИСАТЬ ТАКУЮ ВОТ ШТУКУ, чтобы заменить imaonarray
Оказывается все много-много проще блин. Век живи-век учись, ешкин кот!
Еще раз спасибо-вы упростили мне жисть!
А еще есть какие-то гаджеты (навороты) в
массивах? Может еще какие там фишки есть, которые никто не знает, точнее знают, но профессионалы ?
Я просто все всегда через циклы :( Просто оказывается массивы много-много удобнее.
Я просто все всегда через циклы :( Просто оказывается массивы много-много удобнее.
Знаете, уважаемый... и я ведь тоже через циклы - зачем по-другому?
А если бы и использовал iMAOnArray, то как-нибудь так:
Ха. что-то не так с вставлялкой кода :-)..
.
Потому что бывают интересные ошибки,
которые возникают из-за того, что мы не проверяем
и не визуализируем данные. А раз уж iMAOnArray имеет специфику
(нужен вызов ArraySetAsSeries), которая может привести к ошибке,
то эта ошибка должна возникнуть.
И на отладку у вас уйдет больше времени,
чем на написание специфической функции МоёiMAOnArray.
то это означает, что вам нужно объявить функцию.
А в циклах начал ставить смешные проверки типа
if(текущаяПеременная == oldValue) { Alert("Зациклилось в СделайРаз()."); return; }
потому что когда виснет MT, убивать его, вытирать индикатор и запускать заново-
намного дольше.
.
Единственное что- пишите структурный код.
Как говорил великий Фаулер в книге "Рефакторинг",
если вы хотите сделать комментарий
Не будьте профессионалом- делайте ошибки, планируйте, что вы их сделаете :-).
.
Что любопытно, у Автокада (инженерные чертежи, проекты и тп) есть режим проверки CRC.
Т.е. все сохраняемые файлы- возможно, и внутри автокада что-то фиксируется на уровне-
сохраняются с контрольными кодами, которые потом пересчитываются и проверяются :-).
Знаете, уважаемый... и я ведь тоже через циклы - зачем по-другому?
Не будьте профессионалом- делайте ошибки, планируйте, что вы их сделаете :-).
Просто господин Rosh писал где-то на форуме альпари в уроках ( всегда читаю, что он там пишет), что цикл-кушает ресурсы компьютера, поэтому подумал, что так наверное будет проще и полезнее, оказалось совсем даже и нет :(
Потому что бывают интересные ошибки,
которые возникают из-за того, что мы не проверяем
и не визуализируем данные. А раз уж iMAOnArray имеет специфику
(нужен вызов ArraySetAsSeries), которая может привести к ошибке,
то эта ошибка должна возникнуть.
чем на написание специфической функции МоёiMAOnArray.
Да, полностью с вами соглашусь. Просто, циклы понять легко, а вот понять все эти амаонарай, сетарай для человека с гуманитарным образованием, да и еще слабым логическим мышлением-крайне сложно :(
то это означает, что вам нужно объявить функцию
Просто господин Rosh писал где-то на форуме альпари в уроках ( всегда читаю, что он там пишет), что цикл-кушает ресурсы компьютера
Дык... используйте функцию как я привел- хотите- она работает быстро и оптимально.
Хотите- включаете режим "паранойя" ("дебаг") и получаете резервирование обсчетов в два раза.
Если "пилотирование" на "паранойя" прошло, то потом режим можно отключить.
А еще есть какие-то гаджеты (навороты) в
массивах? Может еще какие там фишки есть, которые никто не знает, точнее знают, но профессионалы ?
Я просто все всегда через циклы :( Просто оказывается массивы много-много удобнее.
Кто-то, где-то, когда-то :) на этом форуме написал, как заменить многомерный массив одномерным.
может когда-нить пригодится.
В mql4 максимум четырехмерный массив, можно изменить только первое измерение и, вроде, одномерный быстрее.
массив однозначно удобнее, еси он буферный :)
но 8 штук не всегда хватает, приходицо извращаться
массив однозначно удобнее, еси он буферный :)
но 8 штук не всегда хватает, приходицо извращаться
N.B.: Визуализацию можно сделать объектами: линиями и стрелками :-).
Работает вполне себе ничего.
массив однозначно удобнее, еси он буферный :)
Спасибо, это тоже очень важно. Кстати, я почти интуитивно именно так и стал писать все нужные мне массивы-через буфер, даж шаблончик сделал-заготовку заранее :)
Дык... используйте функцию как я привел- хотите- она работает быстро и оптимально.
Хотите- включаете режим "паранойя" ("дебаг") и получаете резервирование обсчетов в два раза.
Если "пилотирование" на "паранойя" прошло, то потом режим можно отключить.
Угу, теперь тока функцией и буду считать имаонарай, тем более мне там все ясно, все понятно :)
Спасибо всем за подсказики, разобрался во всем лучше некуда и теперь мне радастно :) Сокрушу рынок, порву Бафета, найму Потанина газоны постригать, когда куплю себе Италию :)
Только учтите, что МА на массиве - штука тормозная. Если вам нужно простое арифметическое - Simple MA, то лучше посчитать его в теле своей программы (сумма элементов массива отнесенная на его длину). Можете даже почувствовать вкус к "семантическому сахару" типа x+=y в цикле.
Экспоненциальную МА вообще нет смысла считать через обращение к этой функции. Там вообще нужно знать только два значения (а не гонять целый массив!!!): текущее значение MA и предыдущее: ema=k*ARRAY[i]+(1-k)*emaPrevios, где k - коэффициен, вычисляемый из периода по форумуле k=2/(Период+1); emaPrevios - предыдущее значение ema - если загонять в массив, то, соответственно, ema[i] и ema[i+1] для серийных массивов.
Могу привести фрагменты кода для внедрения.
Да и другие типы не особо сложнее...