私が試行錯誤しているアドバイザーの組み立て方 - ページ 52

削除済み  

何もないところからmt4でExpert Advisorを作りました。

この種のIndicatorsの場合https://www.mql5.com/ru/code/8772

撮影者

スナップショット2 これはモードの1つです

通常のモードであるオープンクローズがあります

BrainTrend1Sig
BrainTrend1Sig
  • www.mql5.com
Индикатор BrainTrend1Sig.
ファイル:
削除済み  
Alexsandr San:

何もないところからmt4でExpert Advisorを作りました。

この種のIndicatorsの場合https://www.mql5.com/ru/code/8772

モードの1つです。

通常のモードであるオープンクローズがあります

この不具合、テスター用インジケーターhttps://www.mql5.com/ru/code/8772

最終的な結果は

スナップショット0

スナップショット7

BrainTrend1Sig
BrainTrend1Sig
  • www.mql5.com
Индикатор BrainTrend1Sig.
削除済み  

MT4 testerでハード、Indicatorsからテストになるのはひどいhttps://www.mql5.com/ru/code/28364

撮影者

Phoenix
Phoenix
  • www.mql5.com
В стрелочном индикаторе Phoenix используется комбинация трех индикаторов: Moving Average, Bolinger Bands и Momentum в сочетании с двумя мощными формулами, основанными на поведении цены текущего графика. В индикаторе Phoenix также реализована система звуковых и текстовых алертов, а также отправка...
 
Alexsandr San:

この機能をStrategy Testerで使ってみたいという方がいらっしゃるかもしれませんので、ユーティリティをお送りします。

関数そのもの ここで

インジケータLow_Macd_Line.mq5 から、これらの水平線を与える必要が ある場合、1 つの名前"LOW"

面白いかも

もう見せないんですか?

削除済み  
Renat Akhtyamov:

が面白いかもしれません。

まだ状態を見せてくれないの?

そのバージョンは純粋にテスターで、機能がどう動くかを確認するためのものです。結果が出ない、出たとしても正しくない。

こちらhttps://www.mql5.com/ru/signals/741568 Utility を確認しています。 この機能はまだ起動していませんので、他の機能を確認しています。

削除済み  
Alexsandr San:

すべてはポイントを求めて - これにRsiとMacdを追加(Indicator https://www.mql5.com/ru/code/392)。


名前を変えないという大失態を犯してしまった

//---- имя для окон данных и лэйба для субъокон
   string short_name="Rsi_Macd_BrainTrend1Sig";
   IndicatorSetString(INDICATOR_SHORTNAME,short_name);

Rsi_Macd_BrainTrend1Sig

ファイル:
削除済み  
Renat Akhtyamov:

面白いかも

は、もう表示されないのですか?

この機能はSLとしてもトロール(距離を設定し、青い線の後ろをトロールする)としても使える

撮影者

イエローラインから使うほうがわかりやすい

//+------------------------------------------------------------------+
//| ENUM_TRADE_COMMAND                                                 |
//+------------------------------------------------------------------+
enum ENUM_TRADE_COMMAND
  {
   Turn_Off=0,       // TURN OFF
   Line1_Line1=1,    // Line: LOWER
   Line2_Line2=2,    // Line: TOP
   Line_Line=3,      // Line: LOWER+Line: TOP
   Line1_buys=4,     // Line: LOWER+Buy's
   Line2_sells=5,    // Line: TOP+Sell's
   sells_Line1=6,    // Line: LOWER+Sell's
   buys_Line2=7,     // Line: TOP+Buy's
   close_buys=8,     // Close All Buy's
   close_sells=9,    // Close All Sell's
   close_all=10,     // Close All Buy's and Sell's
   open_buy=11,      // Open Buy
   open_sell=12,     // Open Sell
   close_open_b=13,  // Close Sell+Open Buy
   close_open_s=14,  // Close Buy+Open Sell
   open_buy_sell=15, // Open Buy and Sell
  };
//+------------------------------------------------------------------+
削除済み  

こちら https://www.mql5.com/ru/forum/135593/page4#comment_3441020

ファイル:

しかし、そこにDLLがある - 私はそれを削除しました。しかし、Indicator (MT4)は動作している、私はまだそれが何ができるかを理解する必要があります。

XAUUSDM30

Новый WmiFor (2.4)
Новый WmiFor (2.4)
  • 2012.02.23
  • www.mql5.com
Наблюдаю больше суток на разных парах. Вот только что еще один сигнал. Редкие, но удивительно точные предсказания (извините за эмоции =...
ファイル:
WmiFor.mq4  23 kb
削除済み  

その前に、関数を投稿し、通貨の利益損失 -ポジションを閉じます。 と少し間違って、それはちょうど等しいが追加されている必要があることが判明した

//+------------------------------------------------------------------+
//|                                                SIGNAL_PROFIT.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"
//---
#include <Trade\PositionInfo.mqh>
#include <Trade\Trade.mqh>
#include <Trade\SymbolInfo.mqh>
CPositionInfo  m_position;                   // trade position object
CTrade         m_trade;                      // trading object
CSymbolInfo    m_symbol;                     // symbol info object
//---
input double TargetTakeProfit = 10000; // Прибыль
input double TargetStopLoss   = 10000; // Убыток
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

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

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(AccountInfoDouble(ACCOUNT_PROFIT)<-TargetStopLoss ||
      AccountInfoDouble(ACCOUNT_PROFIT)>=TargetTakeProfit)
     {
      CloseAll();
      PlaySound("ok.wav");
     }
  }
//+------------------------------------------------------------------+
//| start function                                                   |
//+------------------------------------------------------------------+
void CloseAll(void)
  {
   for(int i=PositionsTotal()-1; i>=0; i--) // returns the number of current positions
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         ClosePosition(m_position.Symbol()); // close a position by the specified symbo
        }
  }
//+------------------------------------------------------------------+
//| 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");
  }
//+------------------------------------------------------------------+
//| Init trade object                                                |
//+------------------------------------------------------------------+
bool InitTrade(const string symbol)
  {
   if(!m_symbol.Name(symbol)) // sets symbol name
      return(false);
   if(IsFillingTypeAllowed(symbol,SYMBOL_FILLING_FOK))
      m_trade.SetTypeFilling(ORDER_FILLING_FOK);
   else
      if(IsFillingTypeAllowed(symbol,SYMBOL_FILLING_IOC))
         m_trade.SetTypeFilling(ORDER_FILLING_IOC);
      else
         m_trade.SetTypeFilling(ORDER_FILLING_RETURN);
   return(true);
//---
  }
//+------------------------------------------------------------------+
//| Checks if the specified filling mode is allowed                  |
//+------------------------------------------------------------------+
bool IsFillingTypeAllowed(string symbol,int fill_type)
  {
//--- Obtain the value of the property that describes allowed filling modes
   int filling=(int)SymbolInfoInteger(symbol,SYMBOL_FILLING_MODE);
//--- Return true, if mode fill_type is allowed
   return((filling & fill_type)==fill_type);
  }
//+------------------------------------------------------------------+
ファイル:
削除済み  
Alexsandr San:

#property version "1.012"

若干の機能向上

トリガーされると、水平線「売り」がポジションをオープンし、水平線「買い」を表示、またはその逆を行います。

また、ラインは"0" から、距離はObj: Trailing Step MACDで 設定されます。

または水平線"LOW " から。

FromTimer "LOW Up" "LOW Down"同じ、距離のみ設定 (input ushort InpObjTrailingStepCS = 5;// Obj: Trailing Step, in pips (1.00045-1.00055=1 pips).

インジケータで水平線の距離を 知る方法Low_Macd_Line.mq5 トレイルで設定する(各ペアで、異なる距離)

ユーティリティの設定をコピーして貼り付ける

画像では "0"からHorizontal BUY 0.0064、Horizontal LOWに触れるとHorizontal SELLが設定されます("0"-0.0064 以下の場合のみ)。

重要!!ユーティリティで入力する数値の前にマイナス(-)を付けないでください。

バリアントの1つ、この機能の仕組み

損益計算書機能を変更しました#property version "1.013"

input string   t="-----  Parameters         -----";              //
input string   Template                     = "ADX";             // Имя шаблона(without '.tpl')
input bool     Inpwithout                   = false;             // Сменить только шаблон (true)
input datetime InpMonday_2                  = D'1970.01.01';     // Dell (00::00 -> off)
input double   TargetTakeProfit             = 1000000;           // Прибыль
input double   TargetStopLoss               = 1000000;           // Убыток
input uint     maxLimits                    = 1;                 // Кол-во Позиции Открыть в одну сторону
input double   InpLots                      = 0.01;              // Lots
input int      InpTakeProfit                = 900;               // Take Profit ("0"-No. 5<100)

に達すると、すべてを閉じて削除し、開いているすべてのウィンドウを指定されたパターンに変更します。

ファイル: