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

 
unnnamed:

Спасибо Эдди, но это не то

почему не то? создай эти объекты на одном графике и помести на все.

unnnamed:
Понадобился индюк, показывающий вводимую иформацию на всех графиках, к которым он прицеплен. К примеру в окне индюка выбираю "AUDUSD - вверх, GBPUSD - вниз, и т. д.", и на графике NZDUSD (индюк на нем висит) автоматом, в реальном времени это обновлялось в виде иконок или текста. Возможно ли подобное осуществить и в каком направлении начать искать?

осуществить можно. осуществить могут тут, да и сам я могу

 
Roman.:


Решение:

Приведу для бай (селл - по аналогии):

1. перелом МА - получаем значения МА на 3-м, 2-м и 1-ом барах - сравниваем. Если значения МА на барах №№ 3>2 и 2<1, то это перелом.

2. далее - фрактал - пробитие - сигнал к сделке

3. Что касается перебора МА - во внешние (оптимизируемые) переменные выносите:

Period_MA (можете ставить от 2 до 240 с шагом 2), MODE - (метод вычисления МА - диапазон изменений от 0 до 3 шаг 1), PRICE_TYPE - (ценовая константа - диапазон изменений от 0 до 6 шаг 1 ), слышал, что при работе внутри дня разумнее МА считать по средним значениям (цена закрытия не принципиальна), при работе на дневных свечках МА считать по ценам закрытия дней.

PERIOD - меняете вручную при каждой последующей оптимизации - 1,5,15,30,60,240...

Нажмите F1 на iMA - еще раз там все внимательно перечитайте.

Ну, и, естественно ТР и стоп-лосс оптимизируйте как обычно.

П.С. Не забудьте написать информатион по результатам тестов... :-)))

Протестировал все ТФ от М1 до Н1 с оптимизацией всех МА до периода = 120. Результат - стратегия эта неприбыльная. Лучший вариант был при Н1 с оптимизацией за 16 дней и тестированием на 3 последующих дня. Но в итоге и этот вариант даёт убыток.
 
unnnamed:

Спасибо Эдди, но это не то. Перечитал свое сообщение, понял что оно вводит в заблуждение. Приложил рисунок, там подробнее описание.

мне кажеться это осуществимо с помощью классов на мт5... там больше функции
 
eddy:

поконкретней вопрос.

массив это переменные с одинаковым именем но разным номером

Например есть флаг, его можно прописать вручную если (!А ) то ClsB[3] =истина.

Не могу понять как правильно сделать, чтобы i принимало значение 3 автоматом., Поэтому и прошу пример. В учебнике, т.к. там он с предопределенным массивом Open[i] - не совсем понятно, по крайней мере для меня! Думаю, что и все гении программирования с чего-то да начинали, а не родились с калькулятором в пуповине...

if (Cls_B[i]||Cls_S[i]) LotCt=NormalizeLot(OrderLots()/(4-i)); 
 

что значит "автоматом"? программирование это и есть автоматизирование. если i задаётся не внешним параметром - оно задаётся автоматом.

какое значение i тебе нужно?

 
volshebnik:
Протестировал все ТФ от М1 до Н1 с оптимизацией всех МА до периода = 120. Результат - стратегия эта неприбыльная. Лучший вариант был при Н1 с оптимизацией за 16 дней и тестированием на 3 последующих дня. Но в итоге и этот вариант даёт убыток.


Кто бы сомневался... Все итак, по-моему, должно было быть ясно, как день. :-)))

Я помог Вам в Ваших изысканиях прийти к ЭТОМУ решению.

 
eddy:

что значит "автоматом"? программирование это и есть автоматизирование. если i задаётся не внешним параметром - оно задаётся автоматом.

какое значение i тебе нужно?

Чтобы решить эту задачу красиво:
if (Cls_1) LotCt=NormalizeLot(OrderLots()/4); 
             else if (Cls_2) LotCt=NormalizeLot(OrderLots()/3);
                  else if (Cls_3) LotCt=NormalizeLot(OrderLots()/2);  
в виде. Может и просто... Но у меня постоянно ошибка
if (Cls_[i]) LotCt=NormalizeLot(OrderLots()/(4-i)); 
 
100yan:
Чтобы решить эту задачу красиво:
в виде. Может и просто... Но у меня постоянно ошибка
Сформулируйте условие словами, помогает.
 
100yan:
Чтобы решить эту задачу красиво:
в виде. Может и просто... Но у меня постоянно ошибка

1) как у вас задан массив Cls_

2) а зачем в данной задаче он в принципе нужен?? Просто в Cls_ сохраните 1/2/3 и пишите:

LotCt=NormalizeLot(OrderLots()/(4-Cls_)); 
 
Доброго дня!Если внутри индюка,расположеного на определеной паре,допустим евродолар,я пишу что то вроде Buffer1[0]=Close[i];я получаю цену по єтой паре.А вот если я хочу разделить тут же на Close[i] другой пари,допустим,фунтдоллар?
Причина обращения: