Прошу помощи в создании рассылки сигналов эксперта

 
Создание и отработка собственного торгового автомата – долгая история. На первом этапе создания полноценной программы на учебном счете можно отрабатывать идею в полуавтоматическом режиме, то есть при срабатывании эксперта необходимо отправить сигнал на сотовый телефон в виде SMS-сообщения и параллельно этот же сигнал на E-mail. Открытие позиции делать вручную. Задача: после добавления скриптом новой строки в файл С: \ Program Files \ MetaTrader 4 \ experts \ include \ Сигналы.csv необходимо новую строку из файла передать в виде SMS-сообщения на сотовый телефон и параллельно на E-mail. Вопросы: 1. Прошу дать ссылку, если эта проблема решена, хотя бы частично (извиняюсь, если я пропустил что-то, но пока я не нашел решения такой задачи); 2. Прошу помощи в создании рассылки сигналов эксперта (возможна оплата за готовую программу). PS: Варианты Экспертов будут создаваться на базе собственных индикаторов. Пример показаний индикаторов: Скриншот «gbp 15m 20080223.gif».
 
Что-то не получается прикрепить файл. После выбора файла в окошке (выполнил Обзор) что сделать дальше? Подскажите. пожалуйста.
 

На один адрес надо отсылать или на несколько?

 
Integer:

На один адрес надо отсылать или на несколько?

На первом этапе отсылать надо мне в один адрес, самому. Но в принципе уже можно отсылать друзьям для информации.

Подскажите как вставить скриншот, что бы показать мою красоту.

 

На первом этапе будет достоточно функции SendMail(). Не знаю что у вас со скриншотами, обычно без проблем вставляются.

 
Integer:

На первом этапе будет достоточно функции SendMail(). Не знаю что у вас со скриншотами, обычно без проблем вставляются.


Спасибо за оперативный ответ.

 
pvm63:
Создание и отработка собственного торгового автомата – долгая история. На первом этапе создания полноценной программы на учебном счете можно отрабатывать идею в полуавтоматическом режиме, то есть при срабатывании эксперта необходимо отправить сигнал на сотовый телефон в виде SMS-сообщения и параллельно этот же сигнал на E-mail. Открытие позиции делать вручную. Задача: после добавления скриптом новой строки в файл С: \ Program Files \ MetaTrader 4 \ experts \ include \ Сигналы.csv необходимо новую строку из файла передать в виде SMS-сообщения на сотовый телефон и параллельно на E-mail. Вопросы: 1. Прошу дать ссылку, если эта проблема решена, хотя бы частично (извиняюсь, если я пропустил что-то, но пока я не нашел решения такой задачи); 2. Прошу помощи в создании рассылки сигналов эксперта (возможна оплата за готовую программу). PS: Варианты Экспертов будут создаваться на базе собственных индикаторов. Пример показаний индикаторов: Скриншот «gbp 15m 20080223.gif».


Если еще актуально, пишите, смогу помочь
fxrobo_at_gmail_dot_com
 

Итог работы за 2 месяца в МТ4:

1. Переведены индикаторы из Метастока

2. Создан советник для вывода информации на E-mail или SMS на сотовый.


Текст советника


// =========================================================================
//                                                        Signal.mq4 
//                                                        pvm63 @pochta.ru   
/* Эксперт предназначен для передачи сообщений (SMS или E-mail) для открытия
   или закрытия позиций (Buy, Flet, Sell) в ручном режиме  */
// ======================================================================  1
extern string Fml_K="KK";   /* в окне "Параметры" выбор индикатора  
    (более чувствительный  в тестовом режиме на таймфрейме 1 min) ,
    в реале выбираем индикатор DAT  или другой из используемых или их суперпозиции   */
extern string Fml_S="S";   // в окне "Параметры" выбор индикатора
extern string Fml_M="M";   // в окне "Параметры" выбор индикатора
bool New_Bar =   false;    // объявление и задание исходного значения переменной
bool flag_Buy =  true;  
bool flag_Sell = true;  
bool flag_Flet = true; 
string Autor = "pvm63";   /* в SMS-информации на мой сотовый телефон  
       7927*******@sms.mgsm.ru (вместо звездочки необходимо проставить свой номер)
        Megafon указывает источник 8 927  ;
       а в E-mail - предназначена для настройки почты при фильтрации спама   */
string X = "  ";      //  пробел для разделения частей информации при ее выводе
string Inform;        // выводимая информация
// ====================================================================== 2
int start()                           // cпециальная функция start
  {
// ======================================================================= 3
New_Bar =  Fun_New_Bar();       /* обращение к пользовательской функции,
                          можно просто  Fun_New_Bar(), так как возратится 
                          последнее значение New_Bar   */
   if (New_Bar == false)                        // если бар не новый,  
      return;                                   // ..то уходим
// ======================================================================= 4
double Price = Bid;                 //  переменная  Price на каждом тике 
Inform= Symbol()  + "= " +DoubleToStr(Price,Digits)  + "  " +
         TimeToStr(TimeCurrent(),TIME_DATE|TIME_MINUTES); 
 //  GBP =1,2345  2008.03.10 10:15  пример вывода информации
//====================================================  сигнал Flet ===== 5
if (    iCustom(NULL,0,Fml_K,0,0) == 0           // синяя линия индикатора К 
      // &&  iCustom(NULL,0,Fml_M,0,0)==0        // черная линия индикатора М 
     )
    {  if ( flag_Flet == true )   // это первый бар Flet, тогда выводим информацию:
     {   SendMail("Flet", Inform);   // SMS-сообщение или E-mail
         Alert("Flet", X, Inform);                 // Сообщение на экран
         flag_Flet = false;         //  отключение следующих баров на участке  Flet
         flag_Buy  = true;          // подготовка к обнаружению  Buy
         flag_Sell = true;          // подготовка к обнаружению  Sell
        }
       //  GetLastError();
    return;                  // Выход на первом тике следующего бара            
    }    // Если условия Flet на последующих барах еще действительны, то выходим                                               
// ======================================================  сигнал Buy  =====  6
 if (       iCustom(NULL,0,Fml_K,0,0)==100        // синяя линия индикатора К
        //  &&  iCustom(NULL,0,Fml_K,0,0) >=0     // черная линия индикатора К
        //  &&  iCustom(NULL,0,Fml_M,0,0)==100    // черная линия индикатора М
      )         
   { if ( flag_Buy == true )     // это первый бар  Buy, тогда выводим информацию:           
       {  SendMail("Buy",Inform);   // SMS-сообщение или E-mail
         Alert("Buy", X, Inform);                 // Сообщение на экран
         flag_Buy  = false;         //  отключение следующих баров на участке  Buy
         flag_Flet = true;          // подготовка к обнаружению  Flet
         flag_Sell = true;          // подготовка к обнаружению  Sell
       }  
    return;                    // Выход на первом тике следующего бара                     
    }    // Если условия Buy на последующих барах еще действительны, то выходим                                                                                                   
// ======================================================= сигнал Sell ====  7
if (           iCustom(NULL,0,Fml_K,0,0)==-100     // синяя линия индикатора К
       // &&   iCustom(NULL,0,Fml_K,0,0) <=0       // черная линия индикатора К    
       // &&   iCustom(NULL,0,Fml_M,0,0)==-100     // черная линия индикатора М     
     )         
   { if(   flag_Sell == true )   // это первый бар  Sell, тогда выводим информацию:       
      {    SendMail("Sell",  Inform);   // SMS-сообщение или E-mail      
          Alert("Sell", X, Inform);                // Сообщение на экран
          flag_Sell = false;        //  отключение следующих баров на  участке  Sell
          flag_Flet = true;         // подготовка к обнаружению  Flet
          flag_Buy  = true;         // подготовка к обнаружению  Buy
       }                            
     return;            // Выход на первом тике следующего бара                                                           
   }    // Если условия Sell на последующих барах еще действительны, то выходим           
   }   // ===========  окончание cпециальной функция start  ================  8
// ============================   функция обнаружения нового бара  =========  9
bool Fun_New_Bar()                                
  {  static datetime New_Time=0;                  // время текущего бара
     New_Bar=false;                               // нового бара нет
   if( New_Time!= Time[0])                        // сравниваем время
     { New_Time= Time[0];                          // теперь время такое
      New_Bar= true;                              // поймался новый бар
      return(New_Bar);   /* возврат значения. Можно и без этой строки, 
                         а последнее значение New_Bar будет передано в место
                         вызова этой функции   */ 
   }
    }  
// ======================== конец, а кто доехал = молодец !  ===============  10
 

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

=) надобыло парочитать сперва тему немного, вопос бы отпал =)

 

Хм... вот мысля пришла... :)))

Ведь можно посылать письмо на свой ящик, который по получении
может рассылать по списку далее...

 
kombat:

Хм... вот мысля пришла... :)))

Ведь можно посылать письмо на свой ящик, который по получении
может рассылать по списку далее...


Спасибо за подсказку!
Причина обращения: