Группа "Стол заказов MQL"

Рейтинг 2153



РЕКОМЕНДУЮ



EA FIBO - 1.161

Здравствуйте советник основан на числе Фибоначчи 1.161

1) При образовании нижнего фрактала берем цену с низины фрактала как на рисунке.

Это цена 136.529… Удалим первые два числа от цены это 13… И получим 6529 после умножим эту цену на 1.161 и получим приблизительно точку разворота или отката цены. 6529 * 1.161 = 7580. 7580 цена где мы продаем. Как видно на рисунке


2) При образовании верхнего фрактала мы берем самую высокую цену с фрактала только теперь делим эту цену на 1.161 получаем… 7571 / 1.161 = 6521. 6521 это цена покупки.


3) Функции советника стоп лосс, таке профит, мартингейл.

4) Функция что бы советник мог работать еще и с последними 3 числами ( цены ) по тому же принципу просто берем последние 3 числа от цены и делаем умножение или деление с ними… Это для режима скальпинга это обязательно прошу… Спасибо!
  • +3
  • Просмотров: 2536
  • 15 октября 2019, 17:06
  • Mtyvnel
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
МАССивный ЭФФЕКТ
Следующая запись в группе  
Исправить вход в рынок в советнике
14 октября 2019
16 октября 2019

Брокер для ваших роботов, 15 лет на рынке

Комментарии (17)

+
0
на 19-е
avatar

  35  AM2 Сообщений: 16428 - Андрей

  • 15 октября 2019, 17:45
+
0
Интересный подход, таково я еще не встречал. работает только на кроссе фунт-йена?
avatar

  4  alexzh16 Сообщений: 59

  • 15 октября 2019, 17:49
+
0
Нет я заметил он работает на всех валютных парах :) 
avatar

  6  Mtyvnel Автор Сообщений: 138

  • 15 октября 2019, 18:03
+
0
нужно будет посмотреть, весьма любопытно. и даже я бы сказал неожиданный. Когда слышал от кого то, что на Форексе может работать стратегия, которая совершенно не поддается логике со стороны известных на сегодня методов. Может оно и есть то самое :) 
avatar

  4  alexzh16 Сообщений: 59

  • 15 октября 2019, 18:11
+
0
верхний/нижний фрактал — это первый что образовался или при достижении цены до полученного значения после умножения/деления? когда нужно брать фрактал тот самый = который нужно брать?
Редактирован: 15 октября 2019, 18:28
avatar

  4  alexzh16 Сообщений: 59

  • 15 октября 2019, 18:17
+
0
Я взял этот пример образовался фрактал нижний… Цена последние 3 числа 858 после умножил это число на 1.161 после получил сопротивление 996, после умножил 996 на 1.161 что бы получить другое сопротивление 1156, после я опять умножил 1156 на 1.161 чтобы получить еще одно сопротивление и т.д. Вот сейчас на иене фунте.
avatar

  6  Mtyvnel Автор Сообщений: 138

  • 15 октября 2019, 18:27
+
0
немного задание поменялось уже, вверху было что убираем первые две цифры…

но вопрос был другой, когда тогда делить начинать? те алгоритм каков должен быть для выбора точки разворотной?
avatar

  4  alexzh16 Сообщений: 59

  • 15 октября 2019, 18:41
+
0
Задание не поменялось можно убрать и 3 цифры тогда мы будем скальпировать. Когда образуется фрактал 5 баров один самый низкий два по бокам слева и справа. В МТ4 и в МТ5 есть этот индикатор еще можно по глазу определить на графике просто низину или вершину от этого нечего не меняется :) 
avatar

  6  Mtyvnel Автор Сообщений: 138

  • 15 октября 2019, 18:51
+
0
фрактал понятно как определить. может я не правильно ставлю вопрос. кстати на скринах что в задании судя по всему фрактала правее мы так и не дождались, так как он был после того как мы посчитали цифру вверх уже. опять таки фракталы любые по бокам должны быть или только берем так, если это минимум, то и по бокам должны быть минимальные фракталы или побарабану если фрактал образовался/образован уже был на максимуме или минимуме

Смотри, (откатим время назад на 16:52) мы находимся на уровне 858 что на рисунке (ничего правее больше нет). Все хорошо, это наша точка старт! тут мы определили что это самый низ на графике и предположительно цена не пойдет уже ниже а пойдет вверх, те мы сразу ни чего не делили и угодила с походом наверх, супер. Позицию нужно тут открывать в бай?
Далее умножили на 1,161 получили линию 996. цена пробивает в 17:02 этот уровень, что мы тут делаем? если был открыт бай до этого, то мы закрывает по тейку и на баре в 17:02 что делать? ждем 5 баров? через 5 баров на свече в 17:02 образовался верхний фрактал и он единственный и самый верхний на данный момент- какие действия советника ну и наши в том числе? делим цену на 1,161 и открываем вниз но мы уже на пятом баре от фрактала, когда открывать?

Я вот про такой алгоритм имел ввиду.

Редактирован: 15 октября 2019, 19:11
avatar

  4  alexzh16 Сообщений: 59

  • 15 октября 2019, 19:05
+
0
Все понятно. Я например буду торговать против рынка я так задумал советник… Это так будет когда я определил низину и цена пошла на верх буду на точках сопротивления ставить отложение ордера на продажу с маленьким стоп лосом например 5 пунктов или макс 10! Однажды рынок повернется и я получу прибыль и перекрою потери так как они не большие. Возможно я буду еще использовать и мартингейл. Но я буду торговать не на последние 3 числа а на 4 вот что получилось бы на рисунке видно 6858 * 1.161 = 7962. 7962 одна точка сопротивления я буду продавать если цена дойдет до нее и я проиграю 10 пунктов например по стоп лосу после я возьму следующую точку сопротивления умножив 7962 * 1.161 = 9244 это вторая точка разворота! Вот так я бы опять продавал если бы цена дошла до нее и я бы попал в точку.
avatar

  6  Mtyvnel Автор Сообщений: 138

  • 15 октября 2019, 19:35
+
0
вот, так более понятно стало. Эт упростит задачу и ускорит работу для Андрея :) 
avatar

  4  alexzh16 Сообщений: 59

  • 16 октября 2019, 11:28
+
0
Поэкпериментируйте с Фибоначчи.
avatar

  23  vomisin Сообщений: 110

  • 16 октября 2019, 07:53
+
0
Надо просить Андрея, чтобы коэфф Фибо был выведен в параметры сова.
avatar

  18  Boris54 Сообщений: 814 - ПенSионер

  • 17 октября 2019, 02:56
+
0
Да все правильно! Еще большая просьба добавить и реверс…
avatar

  6  Mtyvnel Автор Сообщений: 138

  • 17 октября 2019, 14:26
+
0
то что у вас есть идеи это хорошо. но у вас есть соображения как все это объяснить машине?
avatar

  35  AM2 Сообщений: 16428 - Андрей

  • 17 октября 2019, 19:40
+
0
туча различных преобразований. пока я встрял на том как собрать число, если в нем есть нули:


//+------------------------------------------------------------------+
//|                                                        Fibo6.mq4 |
//|                                              Copyright 2019, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2019, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

extern double Lots       = 0.1;      // лот
extern double KLot       = 1;        // умножение лота
extern double MaxLot     = 5;        // максимальный лот
extern int StopLoss      = 333;      // лось
extern int TakeProfit    = 444;      // язь
extern int Slip          = 30;       // реквот
extern int Magic         = 123;      // магик

input int count=2;
input double fibo=1.161;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutOrder(int type,double price)
  {
   int r=0;
   color clr=Green;
   double sl=0,tp=0;

   if(type==1 || type==3 || type==5)
     {
      clr=Red;
      if(StopLoss>0)
         sl=NormalizeDouble(price+StopLoss*_Point,_Digits);
      if(TakeProfit>0)
         tp=NormalizeDouble(price-TakeProfit*_Point,_Digits);
     }

   if(type==0 || type==2 || type==4)
     {
      clr=Blue;
      if(StopLoss>0)
         sl=NormalizeDouble(price-StopLoss*_Point,_Digits);
      if(TakeProfit>0)
         tp=NormalizeDouble(price+TakeProfit*_Point,_Digits);
     }

   r=OrderSend(NULL,type,Lot(),NormalizeDouble(price,_Digits),Slip,sl,tp,"",Magic,0,clr);
   return;
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double Lot()
  {
   double lot=Lots;
   for(int i=OrdersHistoryTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderProfit()>0)
               break;
            if(OrderProfit()<0)
              {
               lot=OrderLots()*KLot;
               break;
              }
           }
        }
     }
   if(lot>MaxLot)
      lot=Lots;
   return(lot);
  }
//+------------------------------------------------------------------+
//| Подсчет ордеров по типу                                          |
//+------------------------------------------------------------------+
int CountOrders(int type=-1)
  {
   int coun=0;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==type || type==-1)
               coun++;
           }
        }
     }
   return(coun);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   int pr=(int)(Bid*(MathPow(10,_Digits)));
   string s=(string)pr;
   string s1=StringSubstr(s,count);
   int pr1=(int)s1;
   int pr2=pr1*fibo;
   string s3=StringSubstr(s,0,count);

   double sell=0;


      if(Low[1]>Low[2] && Low[2]>Low[3] && Low[4]>Low[3] && Low[5]>Low[4] && CountOrders(0)<1)
         sell=0;


   Comment("\n Price: ",s,
           "\n Digits: ",_Digits,
           "\n String Length: ",StringLen(s),
           "\n Sub String: ",s1,
           "\n Price 1: ",pr1,
           "\n Price 2: ",pr2,
           "\n Price 3: ",s3);
  }
//+------------------------------------------------------------------+



может у вас есть идея как сделать все это иначе?
avatar

  35  AM2 Сообщений: 16428 - Андрей

  • 17 октября 2019, 21:15
+
0
Здравствуйте Андрей. Если не получается сделать этот советник пожалуйста исправьте этот советник ранее вами созданий он совершенно работает по другой логике. zakaz.opentraders.ru/47401.html. Большое вам спасибо! :) 
avatar

  6  Mtyvnel Автор Сообщений: 138

  • 19 октября 2019, 11:16

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий