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

 
GarKain:
で、最適化した結果をMT4に載せることができるのでしょうか?


いいえ、MQL5上のフクロウのみを対象としたサービスです。最初に書いたのは、-フクロウをFIVEに移し替える...。そして、クラウドにオプトインすれば、それで終わりです。

フクロウのコードを最適化し、最適化に賢く取り組み、フクロウが「空想の世界」でないなら、すべて4人で解決できます。 :-)

 
もし私がmt5で作業したくない場合、owlパラメータの最適な結果(mt5で得られた)は、mt4に取り込むことができますか?
 
GarKain:
もし私がmt5で作業したくない場合、owlパラメータの最適な結果(mt5で得られた)は、mt4に取り込むことができますか?

もちろんです。ただし、MQL4からMQL5へフクロウのコードを転送する必要があります。記事を読むと参考になります。
 
Roman.:

もちろんです。しかし、そのためには、MQL4からMQL5へフクロウのコードを移行する必要があります。記事を読むと参考に なります。
訳すべきことは理解できました、ありがとうございます。
 
GarKain:
もし私がmt5で作業したくない場合、owlパラメータの最適な結果(mt5で得られた)は、mt4に取り込むことができますか?

最適化は機器に依存しない。さあ、やってみろ!
 

V_Symの配列は、空の場合はセルに値を書き込むだけで、全てが忙しい場合は1つ追加して書き込むことになっているのに、なぜ余分な空白要素を作ってしまうのか教えてください。

string V_Sym[3]={""};
int init(){
test(Symbol());
test(Symbol());
return(0);
}
int deinit(){
int a_size=ArraySize(V_Sym);
int i=0;
for(i=0;i<a_size;i++){Print(V_Sym[i]);}
return(0);
}
int start(){return(0);}
//+------------------------------------------------------------------+
int test(string Sy=""){
int i,a_size;
a_size=ArraySize(V_Sym);
i=0;
for(i=0;i<a_size;i++)
{
if(V_Sym[i]!=""&&i==a_size-1)
{
ArrayResize(V_Sym,a_size+1);
V_Sym[i+1]=Sy;
}
if(V_Sym[i]==""){
V_Sym[i]=Sy;
break;
}
}
return(0);
}

問題は、空のセルの値が「"」と一致しないことです。でも、じゃあ何に相当するんだろう?プリント出力 ""
 
Skydiver:

私のアイデアは、それが空の場合、単にセルに値を書き込むか、またはすべてがビジー状態であれば、さらに1を追加してそれに書き込むことですが、これはV_Sym配列に余分な空の要素を作成する理由を教えてください。

問題は、マスクブの初期化時に空の要素の値が「"」と等しくないことであることが判明しました。でも、何とイコールなんでしょうね。プリント出力 ""

また、この関数を使用する際に、なぜ変数をゼロに するのか、教えてください。ここにあります。

int test(string Sy=""){
 
こんにちは、あなたはEAが1つのキャンドルに1つのアクション(買い/売り/シグナル/メッセージなど)を与えるようにする方法をアドバイスしてください、すなわち、買いシグナルがある場合、それはこのキャンドルに買いを閉じません、いくつかの関数があるはずですので、あなた自身が車輪を再発明する必要はありません。
 
nelisgar:
こんにちは、皆さん、EAが1つのキャンドルに対して1つのアクション(買い/売り/シグナル/メッセージなど)だけを出すようにする方法を教えてください、すなわち、買いシグナルがある場合、それはこのキャンドルで買いを閉じません、いくつかの関数があるはずです、車輪を自分で再発明しようとしないように。


EA開始関数の前に変数を宣言しています。

int  myBars; 

EAのstart(){}関数の後に、サブプログラムを書きます。

//+------------------------------------------------------------------+
//| функция isNewBar() - возвращает признак нового бара                                              |
//+------------------------------------------------------------------+
bool isNewBar(){
  bool res=false;
  if(myBars!=Bars){
    res=true;
    myBars=Bars;
  }   
        return(res);
}
//--------------------------------------------------------------- 

EAのstart()関数では、このサブルーチンと変数を次のように使用します。

if(isNewBar()==true){
  // это первый тик новой свечи - выпоняем необходимые действия
}
 

こんにちは

まずは簡単な例から説明します。そうしないと、 の説明が難しくなります。

ダブル結果

{

double x = Bid;

return(x)です。

}

double result_y()

{

double y = Bid;

return(y);

}

1つに統合する必要がある。

その結果、result()は、一方の関数ではXとして 、他方の関数ではYとして 必要とさ れる。 可能なのでしょうか?どうすればいいのか?

double result() // ?・・・・・・?

{

double x = Bid;

double y = Ask; // これも返さなければ ならない.

return(x)です。

return(y); // ?

}