アドバイザーを無料でお書きします - ページ 120

 
こんにちは!どなたかアドバイザーをいじっていただけませんか?
 
こんにちは。EAを書く のを手伝ってください。本当にいいんです。自分のアイデアを公開できないのが残念です。もしお手伝いいただけるようでしたら、プライベートメッセージを送ってください。ぜひともよろしくお願いします。
 
kasdamato222:
こんにちは。EAを書く のに協力してください。本当にいいんです。申し訳ないのですが、私のアイデアを公に掲載することはできません。プライベートメッセージでご教授いただけると幸いです。

とても良いアイデアなら、プログラマーにお金を払って、あなたのアイデアをExpertに落とし込んでもらいましょう。

 
こんにちは、MT2auto取引を使ってASKインジケータを自動取引にフックすることができる人を助言することができます。このインジケータはシグナルを出し、矢印を描き、アラートを出しますが、チャートにMT2をインストールするとそれが表示されず、したがってシグナルがコピーされません。ASKインジケーターの 設定を修正するか、矢印の形式を変更する必要があると思います。ありがとうございます。
Торговые советники и собственные индикаторы - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Торговые советники и собственные индикаторы - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Среди программ для автоматического трейдинга можно выделить две большие категории: торговые роботы и индикаторы. Первые предназначены для совершения торговых операций на рынках, а вторые — для анализа котировок и выявления закономерностей в их изменении. При этом индикаторы могут использоваться непосредственно в роботах, образуя полноценную...
 
mql5で簡単なEAが欲しいです。動作開始時に、2つの売買ボタンが表示され、そのうちの1つを押すと、あらかじめ設定されたパラメータとマジックナンバーで取引が開始されるはずです。一度ボタンを押すと、指定したチャートに未決済ポジション がなくなるまで消えるはずです。この時間が来たら、ボタンが表示されるはずです。
Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
Sysmart:
mql5で簡単なEAが欲しいです。その作業の最初に、2つの売買ボタンがあり、そのうちの1つを押すと、あらかじめ設定されたパラメータとマジックナンバーを持つ取引が開かれるはずです。一度ボタンを押すと、指定したチャートに未決済ポジション がなくなるまで消えるはずです。この時間が来たら、ボタンが表示されるはずです。

Open Close Panelという 2つのボタンのパネルを作りました。

開閉パネル

オープン・クローズ・パネル2

オープン クローズ パネル2


ただし、ボタンが消えたり、ロックされたりすることはありませんでした。

Open Close Panel
Open Close Panel
  • www.mql5.com
Сама панель содержит три кнопки: 'BUY', 'SELL' и 'CLOSE'. Рассчитана на ручную торговлю - быстро открывать позиции с заданным уровнем Стоп лосс и Тейк профит, а также для быстрого закрытия всех позиций. Архив "Open Close Panel.zip" необходимо распаковать в отдельную папку в папку MQL5/Experts. Содержание архива:
 
Sysmart:
mql5で簡単なExpert Advisorが必要です。その作業の開始時に、2つの購入/販売ボタンが表示され、それらのいずれかを押すと、事前定義されているパラメータとマジックナンバーとの契約を開く必要があります。一度ボタンを押すと、指定したチャートに未決済ポジション がなくなるまで消えるはずです。この時間が来たら、ボタンが表示されるはずです。

を開く、ボタンを削除する - ポジションがない場合はボタンが表示されます。

例-(ただ、すべてのものを所定の位置に置く)。

//+------------------------------------------------------------------+
//|                                               удалить кнопки.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//---
#define  InpMagic 19789876535
//---
#include <Trade\PositionInfo.mqh>
//---
CPositionInfo  m_position; // trade position object
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(!m_position.Select(Symbol()))
     {
      CheckObject();
     }
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   if(ObjectFind(0,"BUY")==0)
     {
      ObjectDelete(0,"BUY");
     }
   if(ObjectFind(0,"SELL")==0)
     {
      ObjectDelete(0,"SELL");
     }
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(ObjectGetInteger(0,"BUY",OBJPROP_STATE)!=0)
     {
      ObjectSetInteger(0,"BUY",OBJPROP_STATE,0);

      //--- сюда BUY

      if(ObjectFind(0,"BUY")==0)
        {
         ObjectDelete(0,"BUY");
        }
      if(ObjectFind(0,"SELL")==0)
        {
         ObjectDelete(0,"SELL");
        }
      PlaySound("ok.wav");
     }
   if(ObjectGetInteger(0,"SELL",OBJPROP_STATE)!=0)
     {
      ObjectSetInteger(0,"SELL",OBJPROP_STATE,0);

      //--- сюда SELL

      if(ObjectFind(0,"BUY")==0)
        {
         ObjectDelete(0,"BUY");
        }
      if(ObjectFind(0,"SELL")==0)
        {
         ObjectDelete(0,"SELL");
        }
      PlaySound("ok.wav");
     }
//---
   if(!m_position.Select(Symbol()))
     {
      CheckObject();
     }
//---
  }
//+------------------------------------------------------------------+
//| Check for long position closing                                  |
//+------------------------------------------------------------------+
bool CheckObject(void)
  {
//---
   bool res=false;
     {
      ObjectCreate(0,"BUY",OBJ_BUTTON,0,0,0);
      ObjectSetInteger(0,"BUY",OBJPROP_XDISTANCE,ChartGetInteger(0,CHART_WIDTH_IN_PIXELS)-102);
      ObjectSetInteger(0,"BUY",OBJPROP_YDISTANCE,37);
      ObjectSetString(0,"BUY",OBJPROP_TEXT,"BUY");
      ObjectSetInteger(0,"BUY",OBJPROP_BGCOLOR,clrMediumSeaGreen);

      ObjectCreate(0,"SELL",OBJ_BUTTON,0,0,0);
      ObjectSetInteger(0,"SELL",OBJPROP_XDISTANCE,ChartGetInteger(0,CHART_WIDTH_IN_PIXELS)-50);
      ObjectSetInteger(0,"SELL",OBJPROP_YDISTANCE,37);
      ObjectSetString(0,"SELL",OBJPROP_TEXT,"SELL");
      ObjectSetInteger(0,"SELL",OBJPROP_BGCOLOR,clrDarkOrange);
      res=true;
     }
//--- result
   return(res);
  }
//+------------------------------------------------------------------+
ファイル:
 
Alexsandr San:

を開く、ボタンを削除する - ポジションがない場合はボタンが表示されます。

example-(一応、全部並べてみました)。

Expert Advisor 自体で Lot Balanse Profit.mq544 kb

ここで-

//+------------------------------------------------------------------+
//| Close selected position                                          |
//+------------------------------------------------------------------+
void ClosePosition(const string symbol)
  {
   if(InitTrade(symbol))
      m_trade.PositionClose(m_position.Ticket()); // close a position by the specified symbo
   PlaySound("ok.wav");
   CheckObject();
  }
//+------------------------------------------------------------------+

かもしれません

------------------------------------------------------------------------------------

第二の選択肢は、物事を正しく設定する方法です。

//+------------------------------------------------------------------+
//|                                               удалить кнопки.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//---
#define  InpMagic 19789876535
//---
#include <Trade\PositionInfo.mqh>
//---
CPositionInfo  m_position; // trade position object
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(!m_position.Select(Symbol()))
     {
      CheckObject();
     }
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   if(ObjectFind(0,"BUY")==0)
     {
      ObjectDelete(0,"BUY");
     }
   if(ObjectFind(0,"SELL")==0)
     {
      ObjectDelete(0,"SELL");
     }
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   CheckButon();
//---
   if(!m_position.Select(Symbol()))
     {
      CheckObject();
     }
//---
  }
//+------------------------------------------------------------------+
//| Check for long position closing                                  |
//+------------------------------------------------------------------+
bool CheckButon(void)
  {
//---
   bool res=false;
     {
      if(ObjectGetInteger(0,"BUY",OBJPROP_STATE)!=0)
        {
         ObjectSetInteger(0,"BUY",OBJPROP_STATE,0);

         //--- сюда BUY

         if(ObjectFind(0,"BUY")==0)
           {
            ObjectDelete(0,"BUY");
           }
         if(ObjectFind(0,"SELL")==0)
           {
            ObjectDelete(0,"SELL");
           }
         PlaySound("ok.wav");
        }
      if(ObjectGetInteger(0,"SELL",OBJPROP_STATE)!=0)
        {
         ObjectSetInteger(0,"SELL",OBJPROP_STATE,0);

         //--- сюда SELL


         if(ObjectFind(0,"BUY")==0)
           {
            ObjectDelete(0,"BUY");
           }
         if(ObjectFind(0,"SELL")==0)
           {
            ObjectDelete(0,"SELL");
           }
         PlaySound("ok.wav");
        }
      res=true;
     }
//--- result
   return(res);
  }
//+------------------------------------------------------------------+
//| Check for long position closing                                  |
//+------------------------------------------------------------------+
bool CheckObject(void)
  {
//---
   bool res=false;
     {
      ObjectCreate(0,"BUY",OBJ_BUTTON,0,0,0);
      ObjectSetInteger(0,"BUY",OBJPROP_XDISTANCE,ChartGetInteger(0,CHART_WIDTH_IN_PIXELS)-102);
      ObjectSetInteger(0,"BUY",OBJPROP_YDISTANCE,37);
      ObjectSetString(0,"BUY",OBJPROP_TEXT,"BUY");
      ObjectSetInteger(0,"BUY",OBJPROP_BGCOLOR,clrMediumSeaGreen);

      ObjectCreate(0,"SELL",OBJ_BUTTON,0,0,0);
      ObjectSetInteger(0,"SELL",OBJPROP_XDISTANCE,ChartGetInteger(0,CHART_WIDTH_IN_PIXELS)-50);
      ObjectSetInteger(0,"SELL",OBJPROP_YDISTANCE,37);
      ObjectSetString(0,"SELL",OBJPROP_TEXT,"SELL");
      ObjectSetInteger(0,"SELL",OBJPROP_BGCOLOR,clrDarkOrange);
      res=true;
     }
//--- result
   return(res);
  }
//+------------------------------------------------------------------+

---------------------------

Expert Advisorは2番目のオプションに付属しています !

ファイル:
 
Alexsandr San:

エキスパート自身では Lot Balanse Profit.mq544 kb

ここで-

勿体無い

------------------------------------------------------------------------------------

第二の選択肢は、いかにして物を適切な場所に置くかである

---------------------------

2番目のオプションに付属するExpert Advisor !!!

エキスパートには不要なものがたくさんある、私の知識では不要なものを淘汰することはできないだろう。

 
Sysmart:

Expert Advisorには不要なものがたくさんあります。私の知識では不要なものを省くことはできません。

だから、私はそれをかみ砕いた - あなたがしなければならないすべては、あなたのコードに貼り付けることですhttps://www.mql5.com/ru/forum/35071/page120#comment_16528116

その中に必要なものをすべて挿入する必要があります。しかし、ロットの利益.mq545 kb.(まだいろいろと挿入する必要があります)。

理由: