![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
ivalerian |
![]()
Сообщение
#21
|
Группа: Активный участник Сообщений: 6 Регистрация: 17.11.2007 Пользователь №: 1 555 Спасибо сказали: 0 раз(а) ![]() |
С августа прошлого года, кто смог добиться высоких результатов, используя Спутник?
|
nocturn |
![]()
Сообщение
#22
|
Группа: Пользователи Сообщений: 5 Регистрация: 23.1.2008 Пользователь №: 1 640 Спасибо сказали: 0 раз(а) ![]() |
Добрый день.
В поисках свежей идеи бродил по просторам инета и вот попал сюда: http://www.tradersforum.net.ru/forum/index...pic=1030&st=140. Меня очень заинтересовала разработка leonid553 т.н. TREND DETECTOR. У меня есть советник для Спутника, скачан где-то на просторах интернета. Так как сам я только начинаю постигать азы программирования, то моя попытка встроить TREND DETECTOR в этот советник не увенчалась успехом - знаний маловато. Такая просьба: может быть кто-нибудь из форумчан или уважаемый автор leonid553 поможет с этим разобраться и встроит код TREND DETECTORA в эксперт. Я думаю, что это поможет советнику открывать больше прибыльных сделок. Оригинал советника выкладываю. P.S. И еще, может кому-нибудь интересно - попробуйте изменить значения индикатора MA_Crossover_Signal с 1/5/1/7 на 0/3/0/36 - увидите, что визуально ложных сигналов станет меньше. Прикрепленные файлы ![]() ![]() |
leonid553 |
![]()
Сообщение
#23
|
![]() Группа: Активный участник Сообщений: 2 002 Регистрация: 14.4.2006 Из: г.Самара Пользователь №: 28 Спасибо сказали: 11 раз(а) ![]() |
Попробую вставить. Если получится. Посмотрю. Но это не поможет эксперту - "открывать больше прибыльных сделок". Нет.
Это всего лишь, возможно, чуть уменьшит число убыточных сделок ! |
nocturn |
![]()
Сообщение
#24
|
Группа: Пользователи Сообщений: 5 Регистрация: 23.1.2008 Пользователь №: 1 640 Спасибо сказали: 0 раз(а) ![]() |
Я тоже это имел ввиду, просто не так выразился.
![]() Несмотря на все мои попытки подобрать приемлемые параметры - он или сливает, или топчется на месте. Спасибо, что откликнулись, Леонид! |
nocturn |
![]()
Сообщение
#25
|
Группа: Пользователи Сообщений: 5 Регистрация: 23.1.2008 Пользователь №: 1 640 Спасибо сказали: 0 раз(а) ![]() |
Наверное не получилось у leonid553 встроить TREND DETECTOR...
|
leonid553 |
![]()
Сообщение
#26
|
![]() Группа: Активный участник Сообщений: 2 002 Регистрация: 14.4.2006 Из: г.Самара Пользователь №: 28 Спасибо сказали: 11 раз(а) ![]() |
С наскока не получилось. Завтра попробую ещё раз вникнуть. Там в эксперте не совсем привычный для меня код...
|
nocturn |
![]()
Сообщение
#27
|
Группа: Пользователи Сообщений: 5 Регистрация: 23.1.2008 Пользователь №: 1 640 Спасибо сказали: 0 раз(а) ![]() |
Мне самому код показался не совсем обычным, хотя я и не спец. Именно после нескольких неудачных попыток я и обратился сюда на форум. Как у вас успехи, Леонид? Если так сложно, может не стоит заморачиваться.
А вообще, мне ваша идея очень понравилась, ведь детектор тренда или, наоборот, флета, можно сделать и на основании других индикаторов. |
leonid553 |
![]()
Сообщение
#28
|
![]() Группа: Активный участник Сообщений: 2 002 Регистрация: 14.4.2006 Из: г.Самара Пользователь №: 28 Спасибо сказали: 11 раз(а) ![]() |
Несколько раз пытался вставить Тренд/детектор в ваш эксперт. Но из за слишком скромных знаний в программировании - ничего не получается. Сделал его в виде функции. Во внешние параметры вставил :
Код extern int PeriodPower = 13; extern int Period_Bulls = 11; extern int Period_Bears = 10; В конце кода вставил саму функцию: Код double TrendDetector() { double Bears_array[50]; int cx=0; while (cx<51) {Bears_array[cx]= iBearsPower(NULL, 0, PeriodPower,PRICE_CLOSE,cx); cx++; } ArraySetAsSeries(Bears_array,true); double MA_Bears =iMAOnArray(Bears_array,0,Period_Bears,1,MODE_SMMA,0); double Bulls_array[50]; int lx=0; while (lx<51) {Bulls_array[lx]= iBullsPower(NULL, 0, PeriodPower,PRICE_CLOSE,lx); lx++; } ArraySetAsSeries(Bulls_array,true); double MA_Bulls =iMAOnArray(Bulls_array,0,Period_Bulls,1,MODE_SMMA,0); return (MA_Bears+MA_Bulls); } Далее предположил , что условие TrendDetector()<0 или TrendDetector()>0 нужно вставить там, где изначально происходит открытие позиций. Скорее всего вот в этот блок (он в середине кода): Код ------------------------------------------------------------------------------------------------ void openorder(int f){ double sl,tp;int res; if(Reverse){ if(f==1)f=2; else if(f==2)f=1; } if(f==2){ while(res<=0){ if(stoploss==0){sl=0;}else{sl=Bid+stoploss*Point;} if(takeprofit==0){tp=0;}else{tp=Bid-takeprofit*Point;} if((!AlertOnlyMode)&& (TrendDetector()<0 )){ res=OrderSend(Symbol(),OP_SELL,lots,Bid,2,sl,tp,xname,ID,0,Red); } if(res<=0){ int error=GetLastError(); Print("Error = ",ErrorDescription(error)); if(error==134)break; Sleep(1000); RefreshRates(); } } if(Alerts || AlertOnlyMode){ Alert("Short Signal on ",Symbol()); } bar=iBars(NULL,P(period)); } else if(f==1){ while(res<=0){ if(stoploss==0){sl=0;}else{sl=Ask-stoploss*Point;} if(takeprofit==0){tp=0;}else{tp=Ask+takeprofit*Point;} if(!AlertOnlyMode){ res=OrderSend(Symbol(),OP_BUY,lots,Ask,2,sl,tp,xname,ID,0,Blue); } if(res<=0){ error=GetLastError(); Print("Error = ",ErrorDescription(error)); if(error==134)break; Sleep(1000); RefreshRates(); } } if(Alerts || AlertOnlyMode){ Alert("Long Signal on ",Symbol()); } bar=iBars(NULL,P(period)); } } /////////////////////////////////////////////////////////////////////////////////////////// Но .... Пробовал вставлять по разному. И в журнале появляется ошибка: 2008.02.10 23:45:16 sputnic_exp_TD GBPUSD,M30: Error = array index is out of range Даже и не знаю, что ещё делать.... |
nocturn |
![]()
Сообщение
#29
|
Группа: Пользователи Сообщений: 5 Регистрация: 23.1.2008 Пользователь №: 1 640 Спасибо сказали: 0 раз(а) ![]() |
Н-да, жаль конечно... Ну а как вам сам эксперт, тестировать пробовали?
|
jokka |
![]()
Сообщение
#30
|
Группа: Пользователи Сообщений: 1 Регистрация: 15.1.2009 Пользователь №: 2 087 Спасибо сказали: 0 раз(а) ![]() |
Дорогие друзья!
У меня возникли несколько технических вопросов по использованию индикаторов файла Spoutnik. Надеюсь, что разобравшиеся в этом люди смогут ответить на них. Итак: 1) Индикатор MACD. На сколько понял из описания, нужно выставить параметры 8, 12, 11. Выставил, только у меня на одном инструменте красная линия идет четко по контуру штрихов (как в прилагаемых к описанию картинках), а во всех остальных красная линия и штрихи не совпадают. Из-за чего это и как исправить. И нужно ли это исправлять или только ориентироваться на штрихи - пересекают верх или вниз нулевую линию. 2) Индикатор MA CrossOver Signal. Честно говоря, не понял какие значения выставить. В описании сказано (Cross EMA 5-7), но когда вставляешь индикатор там 4 значения, а не 2. И еще, сказано, что для длиных позиций должна быть зеленая стрелка, а для коротких - красная. Стрелки действительно есть, но они маленькие и идут по всему графику, а на картинке помимо этих маленьких стрелочек указаны еще большая зеленая и большая красная. Они должны появляться автоматически или это просто был пример куда следует график и стрелки нарисованы дополнительно? 3) Иногда некоторые индикаторы визуально как бы неактивны. Линия, штрихи движутся, но иногда они жирные, а иногда очень тонкие? Что это значит? Что индикатор не работает? Меня смущает, что в описании описано время действия для некоторых инструментов. Получается, что эти индикаторы работают в определенное время? 4) Индиктаор Flat Trend. У него иногда жирные линии, иногда намного тоньще и цвет тусклый. Это что-то означает? 5) В описании сказано, что пользоваться нужно четырьмя индикаторами, а в приложении их 6, и на картинки их 6. Зачем даны остальные? Их нужно принимать во внимание? Благодарю заранее за ответы, прошу прощения, если где-то задал глупый вопрос или сказал глупость. |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 15.3.2025, 17:21 |