Пипсовка Советником, МТС |
Здравствуйте, гость ( Вход | Регистрация )
Пипсовка Советником, МТС |
SERGE |
1.12.2006, 11:07
Сообщение
#1
|
Группа: Активный участник Сообщений: 27 Регистрация: 10.6.2006 Пользователь №: 657 Спасибо сказали: 0 раз(а) |
Интересно , кто как относится к пипсовке? Желательно поделиться опытом.
Для закваски - код экспериментального пипсовщика. Цитата //+------------------------------------------------------------------+ //| FTLM-flat.mq4 | //| | //| | //+------------------------------------------------------------------+ // Оптимизировать для евро -доллар 5 или 15 минут за последний месяц extern double TakeProfit =12; extern double tTakeProfit =6; // тейкпрофит меньше 10 extern double Lots =0.1; extern double StopLoss =30; extern double sStopLoss =25; // стоплосс меньше 10 extern double limh =0.0005; extern double ftlimh =0.0005; extern double stdper =18; //+------------------------------------------------------------------+ int start() { double std; double ftlm,ftlmz,ftlmzz; double ftliml=0-ftlimh; int cnt, ticket, total; //+------------------------------------------------------------------+ if(Bars<100) { Print("bars less than 100"); return(0); } //+------------------------------------------------------------------+ if(TakeProfit<10) { Print("TakeProfit less than 10"); return(0); // check TakeProfit } //+------------------------------------------------------------------+ ftlm=iCustom(NULL,0,"FTLM-STLM",1,0); // индикатор здесь ftlmz=iCustom(NULL,0,"FTLM-STLM",1,1); //http://www.lightpatch.com/forex/_MT4_Indicators/ ftlmzz=iCustom(NULL,0,"FTLM-STLM",1,2); std=iStdDev(NULL,0,stdper,0,MODE_EMA,0,0); //+------------------------------------------------------------------+ total=OrdersTotal(); if(total<1) { // no opened orders identified if(AccountFreeMargin()<(1000*Lots)) { Print("We have no money. Free Margin = ", AccountFreeMargin()); return(0); } //+------------------------------------------------------------------+ // check for long position (BUY) possibility if (ftlm >ftlmz&& ftlmz<ftlmzz && std<limh && ftlm < ftliml ) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,2,Bid-StopLoss*Point,Ask+TakeProfit*Point,"ftlm ",12152,0,Red);Sleep(10000); if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice()); } else Print("Error opening BUY order : ",GetLastError()); return(0); } //+------------------------------------------------------------------+ // check for short position (SELL) possibility if (ftlm<ftlmz&& ftlmzz<ftlmz && std<limh && ftlm > ftlimh) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,2,Ask+StopLoss*Point,Bid-TakeProfit*Point,"ftlm ",12152,0,Blue);Sleep(10000); if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice()); } else Print("Error opening SELL order : ",GetLastError()); return(0); } return(0); } //+-------------------------------close position-----------------------------------+ for(cnt=0;cnt<total;cnt++) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if(OrderType()<=OP_SELL && // check for opened position OrderSymbol()==Symbol()) // check for symbol { if(OrderType()==OP_BUY) // long position is opened { if (Bid<=OrderOpenPrice()-sStopLoss*Point || Bid>=OrderOpenPrice()+tTakeProfit*Point) { OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position } return(0); // exit } else { if (Ask>=OrderOpenPrice()+sStopLoss*Point || Ask<=OrderOpenPrice()-tTakeProfit*Point ) { OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position return(0); // exit } } } } return(0); } //+----------------------------------------------------------------- |
NoName |
1.12.2006, 11:54
Сообщение
#2
|
Группа: Активный участник Сообщений: 514 Регистрация: 1.5.2006 Из: Украина, Кременчуг Пользователь №: 146 Спасибо сказали: 0 раз(а) |
Среди МТС-ников бытует мнение что пипсовать советником - гиблое дело! Начиная от точности генерации тиков в тестере, заканчивая палками в колёсах от ДЦ. Так же рассказывают что результат теста от реала будет очень сильно отличаться, так как будут присутствовать проскальзывания и постоянные реквоты на быстром рынке.
К сожалению личного опыта не имею, пока не было желания проверять на собственной шкуре |
SERGE |
3.12.2006, 14:15
Сообщение
#3
|
Группа: Активный участник Сообщений: 27 Регистрация: 10.6.2006 Пользователь №: 657 Спасибо сказали: 0 раз(а) |
Среди МТС-ников бытует мнение что пипсовать советником - гиблое дело! Начиная от точности генерации тиков в тестере, заканчивая палками в колёсах от ДЦ. Так же рассказывают что результат теста от реала будет очень сильно отличаться, так как будут присутствовать проскальзывания и постоянные реквоты на быстром рынке. К сожалению личного опыта не имею, пока не было желания проверять на собственной шкуре Ну это не совсем пипсовка, попытка реализовать точный вход с коротким тейком при внутридневном флэте, время удержания позиции в зависимости от волатильности - от 20 мин до 1-2 часов. Цель пипеток 30-40 в день, на новостях вырубать. |
SERGE |
10.1.2007, 13:36
Сообщение
#4
|
Группа: Активный участник Сообщений: 27 Регистрация: 10.6.2006 Пользователь №: 657 Спасибо сказали: 0 раз(а) |
Усовершенствованный вариант советника для "тихого" рынка.
Код //+------------------------------------------------------------------+ //| FTLM-CCI-flat.mq4 | //| //| //+------------------------------------------------------------------+ //для евро -доллар 5-15 мин extern double tTakeProfit =7; extern double TakeProfit =10; extern double Lots =0.1; extern double StopLoss =25; extern double a =0; extern double percci =9; extern double ccilimh =60; extern double stdlim =0.0008; extern double stdper =7; int start() { double std; double ftlm,ftlmz,ftlmzz; double cci; double cciliml=0-ccilimh; int cnt, ticket, total; if(Bars<100) { Print("bars less than 100"); return(0); } if(TakeProfit<10) { Print("TakeProfit less than 10"); return(0); // check TakeProfit } ftlm=iCustom(NULL,0,"FTLM_STLM",1,0); ftlmz=iCustom(NULL,0,"FTLM_STLM",1,1); ftlmzz=iCustom(NULL,0,"FTLM_STLM",1,2); cci = iCCI(NULL,0,percci ,PRICE_CLOSE,a)// CCI std=iStdDev(NULL,0,stdper,0,MODE_EMA,0,0); //+------------------------------------------------------------------+ total=OrdersTotal(); if(total<1) { // no opened orders identified if(AccountFreeMargin()<(1000*Lots)) { Print("We have no money. Free Margin = ", AccountFreeMargin()); return(0); } // check for long position (BUY) possibility if (ftlm >ftlmz&& ftlmz<ftlmzz && std<stdlimh && cci < cciliml) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,2,Bid-StopLoss*Point,Ask+TakeProfit*Point,"",0,0,Aqua);Sleep(10000); if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice()); } else Print("Error opening BUY order : ",GetLastError()); return(0); } // check for short position (SELL) possibility if (ftlm<ftlmz&& ftlmzz<ftlmz && std<stdlim && cci > ccilimh ) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,2,Ask+StopLoss*Point,Bid-TakeProfit*Point,"",0,0,Yellow);Sleep(10000); if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice()); } else Print("Error opening SELL order : ",GetLastError()); return(0); } return(0); } for(cnt=0;cnt<total;cnt++) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if(OrderType()<=OP_SELL && // check for opened position OrderSymbol()==Symbol()) // check for symbol { if(OrderType()==OP_BUY) // long position is opened { if (Bid>=OrderOpenPrice()+tTakeProfit*Point) { OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position } return(0); // exit } else { if ( Ask<=OrderOpenPrice()-tTakeProfit*Point ) { OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position return(0); // exit } } } } return(0); } |
Mifrill |
10.1.2007, 21:56
Сообщение
#5
|
Группа: Пользователи Сообщений: 3 Регистрация: 10.1.2007 Пользователь №: 1 193 Спасибо сказали: 0 раз(а) |
Проверил на демке... Просадка абсолютная по паре евро\доллар. Может, не в то время проверял?
|
SERGE |
11.1.2007, 20:41
Сообщение
#6
|
Группа: Активный участник Сообщений: 27 Регистрация: 10.6.2006 Пользователь №: 657 Спасибо сказали: 0 раз(а) |
|
leonid553 |
11.1.2007, 20:56
Сообщение
#7
|
Группа: Активный участник Сообщений: 2 002 Регистрация: 14.4.2006 Из: г.Самара Пользователь №: 28 Спасибо сказали: 11 раз(а) |
to SERGE:
Я не спец. Подскажите, пож., как переделать текст советника в исходный файл ? - в "ромбик"? Или надо всё это перепечатывать в METAEDITOR? ----------------------------------------------------------------------- Вот нашелся тоже пипсовочный советник. Основное достоинство - почти не сливает! Но работает почему-то только в Seii!(тестировал на м5 по фунту...) Прикрепленные файлы pipsun.rar ( 1.22 килобайт ) Кол-во скачиваний: 791 |
SERGE |
12.1.2007, 17:39
Сообщение
#8
|
Группа: Активный участник Сообщений: 27 Регистрация: 10.6.2006 Пользователь №: 657 Спасибо сказали: 0 раз(а) |
to SERGE: Я не спец. Подскажите, пож., как переделать текст советника в исходный файл ? - в "ромбик"? Или надо всё это перепечатывать в METAEDITOR? ----------------------------------------------------------------------- Вот нашелся тоже пипсовочный советник. Основное достоинство - почти не сливает! Но работает почему-то только в Seii!(тестировал на м5 по фунту...) Любой код можно воткнуть через МЕ. Выбирарайте в МЕ "файл" - "создать"- "советник", впишите навание , теперь "готово". Вместо появившегося шаблона копируете нужный код и "компилировать". Не забудьте что используемые в советнике индикаторы должны быть среди ваших пользовательских. |
leonid553 |
12.1.2007, 18:16
Сообщение
#9
|
Группа: Активный участник Сообщений: 2 002 Регистрация: 14.4.2006 Из: г.Самара Пользователь №: 28 Спасибо сказали: 11 раз(а) |
Прошу прощения за назойливость.
Сделал всё "как велено"! Даже индикатор поставил FTLM_STLM. При компиллировании обнаружились ошибки. Устранил! Кроме одной: "stdlimh - variable not defined" - file-МТ4/expert/название-(67, 49) Что можно предпринять? |
SERGE |
12.1.2007, 18:44
Сообщение
#10
|
Группа: Активный участник Сообщений: 27 Регистрация: 10.6.2006 Пользователь №: 657 Спасибо сказали: 0 раз(а) |
Прошу прощения за назойливость. Сделал всё "как велено"! Даже индикатор поставил FTLM_STLM. При компиллировании обнаружились ошибки. Устранил! Кроме одной: "stdlimh - variable not defined" - file-МТ4/expert/название-(67, 49) Что можно предпринять? Исправьте в коде stdlimh на stdlim и скомпилируйте , я недоглядел. Кстати "пипсун"-фуфло сливает "на всех тиках" в ноль. Сообщение отредактировал SERGE - 12.1.2007, 18:47 |
Текстовая версия | Сейчас: 25.9.2024, 23:50 |