0
Можно, но опять же от чего отталкиваться хай -лоу или…
avatar

Servir

  • 3 июля 2019, 17:37
0
А вот теперь сигнал, только дождаться закрытия свечи
avatar

Servir

  • 3 июля 2019, 17:34
0
Пробуй
www.opentraders.ru/downloads/2345/
но я бы добавил на выбор определение середины
1- Hi и Low
2- Close и Open
avatar

Servir

  • 3 июля 2019, 17:01
0
Не знаю не знаю, у меня пока нет сигнала на продажу
avatar

Servir

  • 3 июля 2019, 09:48
0
//+------------------------------------------------------------------+
int OnInit()
  {
   if(GlobalVariableCheck("val")==False) {EventSetTimer(5);}
   else
   if(GlobalVariableCheck("val")==True)
   {
   if(Period()==1440 ) PlaySound("3175.wav");bPlayS=False;
   ...
   if(Period()==15 ) PlaySound("3252.wav");bPlayS=False;
   }
   Comment("\n Total: ",GlobalVariablesTotal());
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   EventKillTimer();
   if(reason==1) GlobalVariableDel("val");
   Comment("\n Total: ",GlobalVariablesTotal());
  }
//+------------------------------------------------------------------+ 
void OnTimer() 
  { 
   PlaySound(mus);GlobalVariableSet("val",1); 
   EventKillTimer();
  }
avatar

Servir

  • 30 июня 2019, 19:13
0
Да не много ошибся Sleep с индикаторами не работает, а вот OnTimer как раз с индикаторами, и отсрочка срабатывания на 5 сек. работает, но проблема счисткой глобал не решена
Корректно все срабатывает только с 0-ми глобальными
avatar

Servir

  • 30 июня 2019, 18:59
0
int OnInit()
{
Sleep(10000);
if(GlobalVariableCheck(«Hi»)==False)
{,,,
avatar

Servir

  • 30 июня 2019, 16:21
0
При старте терминала звук не запуска, а соединения с инетом connect.wav
Можно его и удалить, а если пропадет сеть тогда звука не будет
avatar

Servir

  • 30 июня 2019, 16:05
+1
Слушай а для старика ты круто ногами печатаешь
avatar

Servir

  • 30 июня 2019, 15:22
+1
Ну читай
#property copyright "GDV"
#property show_inputs
extern bool ALL=True;//ВСЕ
extern bool ALL_Profit=False;//ВСЕ +
extern bool ALL_NULL=False;//ВСЕ -
extern bool ALL_BUY=False;//ВСЕ BUY
extern bool ALL_SELL=False;//ВСЕ SELL
extern int Profit=5;//Min. профит для закрытия в +
extern int slippage1=3000;//3 sek.
extern int slippage=3;
void start()
{
      int ask, bid, open;
      double point;
      Sleep(slippage1);
if (ALL==true)
      {  
      for (int i=OrdersTotal()-1; i>=0; i--)
      {
      if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) break;
      if (OrderType()==OP_BUY)
      {
         point=MarketInfo(OrderSymbol(),MODE_POINT);
         if (point==0) break;
         bid=MathRound(MarketInfo(OrderSymbol(),MODE_BID)/point);
         open=MathRound(OrderOpenPrice()/point);
         if (bid-open>Profit) continue;
         OrderClose(OrderTicket(),OrderLots(),bid*point,slippage);
      }
      if (OrderType()==OP_SELL)
      {
         point=MarketInfo(OrderSymbol(),MODE_POINT);
         if (point==0) break;
         ask=MathRound(MarketInfo(OrderSymbol(),MODE_ASK)/point);
         open=MathRound(OrderOpenPrice()/point);
         if (open-ask>Profit) continue;
         OrderClose (OrderTicket(),OrderLots(),ask*point,slippage);
      }
      }
      for (int ii=OrdersTotal()-1; ii>=0; ii--)
      {
      if (!OrderSelect(ii,SELECT_BY_POS,MODE_TRADES)) break;
      if (OrderType()==OP_BUY)
      {
         point=MarketInfo(OrderSymbol(),MODE_POINT);
         if (point==0) break;
         bid=MathRound(MarketInfo(OrderSymbol(),MODE_BID)/point);
         open=MathRound(OrderOpenPrice()/point);
         if (bid-open<Profit) continue;
         OrderClose(OrderTicket(),OrderLots(),bid*point,slippage);
      }
      if (OrderType()==OP_SELL)
      {
         point=MarketInfo(OrderSymbol(),MODE_POINT);
         if (point==0) break;
         ask=MathRound(MarketInfo(OrderSymbol(),MODE_ASK)/point);
         open=MathRound(OrderOpenPrice()/point);
         if (open-ask<Profit) continue;
         OrderClose (OrderTicket(),OrderLots(),ask*point,slippage);
      }
      }   
      for (int iii=OrdersTotal()-1; iii>=0; iii--)
      if (!OrderSelect(iii,SELECT_BY_POS,MODE_TRADES))
      if (OrderType()==OP_SELL || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELLSTOP) OrderClose (OrderTicket(),OrderLots(),Ask,slippage);
      for (int ji=OrdersTotal()-1; ji>=0; ji--)
      if (OrderSelect(ji, SELECT_BY_POS))
      if (OrderType()==OP_BUY || OrderType()==OP_BUYLIMIT || OrderType()==OP_BUYSTOP ) bool cl=OrderClose (OrderTicket(),OrderLots(),Bid,slippage);
      }
if(ALL_Profit==True)
      {
      for (int ki=OrdersTotal()-1; ki>=0; ki--)
      {
      if (!OrderSelect(ki,SELECT_BY_POS,MODE_TRADES)) break;
      if (OrderType()==OP_BUY)
      {
         point=MarketInfo(OrderSymbol(),MODE_POINT);
         if (point==0) break;
         bid=MathRound(MarketInfo(OrderSymbol(),MODE_BID)/point);
         open=MathRound(OrderOpenPrice()/point);
         if (bid-open<Profit) continue;
         OrderClose(OrderTicket(),OrderLots(),bid*point,slippage);
      }
      if (OrderType()==OP_SELL)
      {
         point=MarketInfo(OrderSymbol(),MODE_POINT);
         if (point==0) break;
         ask=MathRound(MarketInfo(OrderSymbol(),MODE_ASK)/point);
         open=MathRound(OrderOpenPrice()/point);
         if (open-ask<Profit) continue;
         OrderClose (OrderTicket(),OrderLots(),ask*point,slippage);
      }
      }
      }
if(ALL_NULL==True)
      {
      for (int kki=OrdersTotal()-1; kki>=0; kki--)
      {
      if (!OrderSelect(kki,SELECT_BY_POS,MODE_TRADES)) break;
      if (OrderType()==OP_BUY)
      {
         point=MarketInfo(OrderSymbol(),MODE_POINT);
         if (point==0) break;
         bid=MathRound(MarketInfo(OrderSymbol(),MODE_BID)/point);
         open=MathRound(OrderOpenPrice()/point);
         if (bid-open>Profit) continue;
         OrderClose(OrderTicket(),OrderLots(),bid*point,slippage);
      }
      if (OrderType()==OP_SELL)
      {
         point=MarketInfo(OrderSymbol(),MODE_POINT);
         if (point==0) break;
         ask=MathRound(MarketInfo(OrderSymbol(),MODE_ASK)/point);
         open=MathRound(OrderOpenPrice()/point);
         if (open-ask>Profit) continue;
         OrderClose (OrderTicket(),OrderLots(),ask*point,slippage);
      }
      }
      }
if(ALL_SELL==True)
      {
         for (int kiii=OrdersTotal()-1; kiii>=0; kiii--)
         if (!OrderSelect(kiii,SELECT_BY_POS,MODE_TRADES))
         if (OrderType()==OP_SELL || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELLSTOP) OrderClose (OrderTicket(),OrderLots(),Ask,slippage);
      }   
 if(ALL_BUY==True)
      {
         for (int kji=OrdersTotal()-1; kji>=0; kji--)
         if (OrderSelect(kji, SELECT_BY_POS))
         if (OrderType()==OP_BUY || OrderType()==OP_BUYLIMIT || OrderType()==OP_BUYSTOP ) OrderClose (OrderTicket(),OrderLots(),Bid,slippage);
      }  
      }
avatar

Servir

  • 30 июня 2019, 15:07
0
А зачем вам код если вы в нем не разбираетесь
а если да то почему не напишете самостоятельно?
avatar

Servir

  • 30 июня 2019, 15:00
0
Даааа угрозы стоящие…
Подскажу — даже самый продвинутый трейдер перед тем как что то ставить на реал проверяет как минимум на демо.
avatar

Servir

  • 30 июня 2019, 14:47
+1
Я так понимаю, если вы обратились на этот форум, то МОЗГОВ вам и не хватает, что бы создать то что просите, а это элементарно. обвинять других в их недостаточности верх хамства.
avatar

Servir

  • 30 июня 2019, 14:25
0
Судя по посту неуважение так и прет.
Уважаемый Вам делаешь добро а «вы в говно», тестировать или нет только ваше дело.
Если кто хочет делиться исходником — пусть, в правилах такого нет, так что или пользуйся а этого мы не узнаем
или прикройся и ЖДИ.
avatar

Servir

  • 30 июня 2019, 13:59
0
Значит Андрей помог.<img src='http://opentraders.ru/templates/skin/g6h/images/smilies/003.gif' alt=' :D '>&nbsp; 
Перед телом выполняемой программы поставь.
int init()
{
Sleep(1000);//1000 = 1 сек.

}
Функция задерживает выполнение текущего эксперта или скрипта на определенный интервал.
avatar

Servir

  • 30 июня 2019, 13:31
0
Ошибок нет т.к. нет ни доп. кнопок ни панелей.
Нет.
Нет.
Доход получается меньше
avatar

Servir

  • 30 июня 2019, 12:09
0
В принципе все понятно и просто, только не понятно по какой системе определять экстремум точку для входа.
если к примеру две свечи одного направления вверх, одна против и опять вверх — если смотреть визуально то тренд продолжается и общая цена достигает своей дельты. Но тогда ломается логика советника. Возможно нужен индикатор для нахождения точек экстремумов?
avatar

Servir

  • 28 июня 2019, 17:19
+1
Презалил индик с лаймом :) 
avatar

Servir

  • 28 июня 2019, 11:39
+1
Презалил индик
теперь есть возможность выбирать значок
avatar

Servir

  • 28 июня 2019, 11:36