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

 
Vinin:


教科書を読んでいないから言えることですが、私も質問をしていません。

もし疑問があり、問題を解決するためのソースがあるのなら、あなたは間違った場所にいるのかもしれません。幼稚園に戻りなさいコツがつかめなかったんですね。

私は、原則的に何も読まないとは言っていません。 リンクが私の役に立つのであれば、質問はもはや問題ではありません。問題を解くには、質問とソースだけでは不十分で、ソースのどこを見るべきかを知る必要があります。
 
Vinin:

常に左から右へ、入力式の結果には依存しない。必ず最後までチェックされます。

その中で、もし if (a>b && c>d)の ような条件を使う必要があるなら...と付け加えておきたい。

実行速度を上げるには、if (a>b) if (c>d), then...のような使い方をします。

なぜなら、a<bと判明した場合、実行はすぐに次のif (a>b) if (c>d ) にジャンプするからです。演算子で比較することができますが、括弧内の式を完全に比較することはできません。

 
GarKain:
何も読まないとは言っていない。 リンク先が役に立てば問題外だ。問題と出典だけでは解決しない、出典のどこを見るかも必要です。

MQL5のフォーラムを読んでください。そこでは、言語の基本を 理解するために、すべての記事を読むことを正しく勧めています。

いずれにせよ、質問をする前にチュートリアルやドキュメントという形でベースを知って(読んで)おく必要があるのです。


 
Roman.:


いいんです。YouTubeでGerchik、見て、聞いて: "市場の30% - すでに屋根よりも高い..." - このような、しかし、会話は100万ルーブル以上からGEPsと主にされています...すなわち、そのような合計から、すでにお金を引き出し、それで生活することができるとき。ソロスが違う年に平均37%早く持っていて、それが普通より多いとか...。

ちなみに、彼と彼のチームは、経営資金を受け入れているのだが...。100万ルーブルからなら、彼はあなたに興味を持つでしょう。ご覧ください。"The Hunt for Gerchik" on finam.fm.すべてのピースを

実際、最近の「狩り」の中で、「初心者」が市場から銀行の年利分以上の利益を取っても、市場や他のすべてに「勝った」と自負できる...と言っていた。しかし、それは、10,20,30%も深刻な量であることから、より多くの、あるいはより深刻でない脱税のことです.

DEPがもっと小さい場合は、"DEPOSIT DEVELOPMENT "という言葉を使います。

すなわち、1000%p.a.以上から...

私も同感です。

 
MQL414:

MT4テスターを信じるなら、条件は2つ、お金と時間です。20,000ルーブル。20万ルーブルと200万ルーブル。


痛い...。:-)おなじみの画像です。フォーラムのこのブランチに エクスパコードを投稿してください。見て、テストして、最適化した上でオプションを提案してくれる...。

 

コードの論理エラーを見つけるのを手伝ってください。チャートに貼り付けると、インジケータが線を描かず、「4002 -Array index- out of range」というエラーが表示されます。

//+------------------------------------------------------------------+
//|                                                  +OtherChart.mq4 |
//|                                                       silhouette |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "silhouette"
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Black
//+------------------------------------------------------------------+
extern string Smb="GBPUSD";
extern bool Candles=false;
extern bool Line=true;
//+------------------------------------------------------------------+
double Buffer_ind[];
double Buffer_OHLC[4][];
string Symb;
int init()
  {
   Symb=Symbol();
   
   SetIndexBuffer(0,Buffer_ind);
   SetIndexStyle(0,DRAW_LINE,EMPTY,1);
   
   return(0);
  }

int deinit()
  {

   return(0);
  }

int start()
  {
   int counted_bars=IndicatorCounted();
   int limit=Bars-counted_bars-1;
   if (limit>1) 
      limit=Bars-1;
   for(int i=limit; i>=0; i--)
    {
      Buffer_OHLC[1][i]=iOpen (Smb,Period(),i);
      Buffer_OHLC[2][i]=iHigh (Smb,Period(),i);
      Buffer_OHLC[3][i]=iLow  (Smb,Period(),i);
      Buffer_OHLC[4][i]=iClose(Smb,Period(),i);
      
      if(Line==true)
       {
        double Cls=Buffer_OHLC[4][i];
        Buffer_ind[i]=Cls; 
       }
    }
   Alert("Error: ", GetLastError());
   return(0);
  }
 
silhouette:

コードの論理エラーを見つけるのを手伝ってください。チャートに貼り付けると、インジケータが線を描かず、「4002 - Array index - out of range」というエラーが表示されます。


1.変数Candlesはどこにも使われていない。

2.ライン

double Cls=Buffer_OHLC[4][i];

が正しく書かれていない。それはループの中にあります。ループの各反復で、新しい変数Clsを作成します。そして、そこには必要ないのです。を書けば十分です。

Buffer_ind[i]=Buffer_OHLC[4][i];
 

というセリフを試してみてください。

double Buffer_OHLC[4][];

に置き換える。

double Buffer_OHLC[][];
 
ただし、配列のサイズを明示的に設定 する、あるいは、インジケータの開始時にすでにコード内で配列のサイズを変更する方がよいでしょう。
 
あ、それからもうひとつ。配列の次元の1つに4つのセルの次元を宣言すると、Buffer_OHLC[4][]を呼び出すことはできません - ポイントは、番号が1ではなく0から始まるということです。そのため、呼べる最大値はBuffer_OHLC[3][]です。