[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 601

 
テスターの機能は、オンライントレードの機能とどう違うのですか?
 
理論上は、トレードサーバーとの通信におけるエラー処理
 
lottamer:


ありがとうございます、私自身はKIMさんのLibrariesに出くわしました...(同志KIMはおそらくFXの世界のMARKSのようなCAPITALを書いた...と我々はすべて今それを引用(すなわち、我々のExpert Advisorにそれを挿入)...)..最近の取引を示す "フラグ "が、さまざまなバリエーションで表示されます。

ただし、私は#include-を使ったことがないのですが...。

を一言で説明できますか?

を一番上に書く # include (ファイル名 mqh)

でも、コードのどこに関数を書けばいいのでしょうか?

GetTypeLastClosePos()。

で、どうするの?

このうち、どのようなポジションを返してくれるのでしょうか?

OrderType() ?

つまり、if(OrderType() ==TRUE ) は、あれとこれをする...ということです。だろう?

関数は return(0) の後に挿入する必要があります。

GetTypeLastClosePos()関数は、買いがあった場合は0、売りがあった場合は1、履歴に何もない場合は-1が返されます。

//+------------------------------------------------------------------+
//|                                                          123.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
if (isCloseLastPosByTake()==true) Comment("Профит"); else Comment("ХЗ");   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.05.2008                                                     |
//|  Описание : Возвращает флаг закрытия последней позиции по тейку.           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
bool isCloseLastPosByTake(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   ocp, otp;
  int      dg, i, j=-1, k=OrdersHistoryTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderCloseTime()) {
                t=OrderCloseTime();
                j=i;
              }
            }
          }
        }
      }
    }
  }
  if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
    dg=MarketInfo(sy, MODE_DIGITS);
    if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
    ocp=NormalizeDouble(OrderClosePrice(), dg);
    otp=NormalizeDouble(OrderTakeProfit(), dg);
    if (ocp==otp) return(True);
  }
  return(False);
}
 
BeerGod:

関数はreturn(0)の後に挿入する必要があります。

GetTypeLastClosePos()関数は、買いがあった場合は0、売りがあった場合は1、履歴に何もない場合は-1を返します。



了解です、ありがとうございます。

それなのに、その関数が#includeファイルにある場合、どのように処理すべきなのでしょうか?

 
lottamer:


了解です、ありがとうございます。

で、なおかつ、その関数が#includeファイルにある場合、その関数をどのように破棄するのか?


どのように理解していますか?

ドキュメントとか、自分なりに?

 

D1のローソク足の始点で、フクロウが正確に保留中の注文を出す必要があります。

関数を書きました。

bool GetTimeToInput()
{
  if(TimeCurrent() == iTime(Symbol(),1440,0)
  {
    return(true);
  }
  else
    return(false);
}

コンパイラは顔をしかめる。

'\end_of_program' - unbalanced left parenthesis E:\Insall'd soft's\Forex\Alpari NZ MT4\experts\Gann_2Days.mq4 (228, 4)

みんなブラケットを持っている。 これは不思議だ。この関数をコメントアウトすると、エラーなくコンパイルされます。何が問題なのでしょうか?

日足ロウソクの 始値のみで 開くという書き方でよいのでしょうか?

 

hoz:

みんなのカッコがそこにある、不思議だ。

いいえ、ifの行で右の犬が抜けています。


とか、コンパイラに関しては「変」という言葉は言わない方がいいかもしれません。 もちろん、自分の目の中にあるログを見るのは難しいですけど :)

そして、実際にその日のローソク 足の始値だけで開くように正しい関数を書いたかどうか?

ノー
 
lottamer:


開発者は何の関係もない。:__

( Hour()>=10 || Hour()<20 ) の代わりに、単純に Hour()>=10 && Hour()<20 にすればよかったのです。

と、すべてうまくいきました。


問題は、動作したことではなく、ヘルプが正しく書かれていれば、動作しないはずだということです。
 
sergeev:

どのように理解していますか?

を、Dokaのように、あるいは自分流に?


をDokaのように。

ファイルがあります。

EAで言及がある。

これは、例えば、以下のように、EAの任意の場所でALREADY使用するのに十分です。

if isCloseLastPosByTake()<0...?

 
rigonich:

問題は、動作したことではなく、リファレンスが正しく書かれていれば、動作しないはずだということです。


証明書には1970年1月1日からの経過秒数とか書いてある :)))))))

どうなんだろう...。