学習ロジック - ページ 2

 
これからは、オフィスやジップがないのは、もはやロジックの欠如の証です :)
 
Integer:

あのね、それで問題ないんだよ。特にテキスト形式のYOUには。明らかにZIPファイルになっていますね。


私が読んだ限りでは、"......および思考の不適切な言語表現に起因するエラー "です。

最初の投稿の一番最後にスマイリーをつけるのを忘れていました。

 
DDFedor:

なんでスマイリーフェイスが必要なんだ? このスレがジョークだとでも思ってるのか?

いや......スマイルは違う(本当に悲しいものもある)。
 
age_nt:
ビクター!私の理解が正しければ、あなたは助ける準備ができています......私はどこに "ロジックがない "のか理解できません。


始めますか?

これは、コードの文脈上、意味がない部分です。

bool showEUR, showUSD, showGBP, showCHF, showJPY, showRAVI;
   if ( StringFind(Symbol(), "EUR", 0) != -1) showEUR = TRUE;
   if ( StringFind(Symbol(), "USD", 0) != -1) showUSD = TRUE;
   if ( StringFind(Symbol(), "GBP", 0) != -1) showGBP = TRUE;
   if ( StringFind(Symbol(), "CHF", 0) != -1) showCHF = TRUE;
   if ( StringFind(Symbol(), "JPY", 0) != -1) showJPY = TRUE;

他の場所にはありますが、明示的な初期化はありません。ブール式は使用しない。ある変数は完全に脱落した。非標準のフォーマット。

異論を聞く覚悟はある。

 
gip:


非標準のフォーマット。


説き明かす
 

このコードのロジックが理解できないので、他のインジケータの レディメイドのコードから作ったのですが、それが見つかりません :(

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Aqua
#property indicator_color2 Red

#property indicator_width1 2
#property indicator_width2 2

extern int NumBars   =  100;

double upbuf[];
double dnbuf[];

int init() {
   IndicatorBuffers(2);
   SetIndexBuffer(0, upbuf);
   SetIndexBuffer(1, dnbuf);
   SetIndexStyle(0, DRAW_HISTOGRAM,STYLE_SOLID);
   SetIndexStyle(1, DRAW_HISTOGRAM,STYLE_SOLID);
   IndicatorShortName("Bars");
   return (0);
}

int deinit() {
   return (0);
}



int start() {
   int counted = IndicatorCounted();
   if (counted < 0) return (-1);
   int draw  = Bars - counted + NumBars + 1;
   int i;
   if (draw > Bars) i = Bars;
   for (i = draw; i >=0 ; i--) {
   if (Low[i] < Open[i]) {
         upbuf[i] = Open[i];
         dnbuf[i] = Low[i];
      } else {
             upbuf[i] =High[i];
             dnbuf[i] =Open[i]; 
         }
    }
   return (0);
}

最後の100本のバーを2色で塗る方法を教えてください。

目標は単純で、DRAW_HISTOGRAMの線種で正しく動作することを学び、最後のインジケータ呼び出しから変更されたバーの数を正しく計算することです。

 
sanyooooook:
説き明かす

彼の書式は、式の中のスペースを許しません。そして、この場所には空間がある。一つのスタイルにこだわることに意味があるのでしょう。
 

機能的には、グラフに表示するための便宜的なもので、計算の正確さには影響しません(私の理解する限りでは)。

他のインデキサーではうまくいくのですが、目に恥ずかしくないようにブロックを一切外さないことも可能なのですが...。出て行く

int init()
  {
//---- indicators

   IndicatorBuffers(5);

   IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));

//---- indicator line
   SetIndexBuffer(0,EUR_Buffer);
   SetIndexBuffer(1,USD_Buffer);
   SetIndexBuffer(2,GBP_Buffer);
   SetIndexBuffer(3,CHF_Buffer);
   SetIndexBuffer(4,JPY_Buffer);

   SetIndexLabel(0,"EUR");
   SetIndexLabel(1,"USD");
   SetIndexLabel(2,"GBP");
   SetIndexLabel(3,"CHF");
   SetIndexLabel(4,"JPY");

   
   SetIndexDrawBegin(0,0);
   SetIndexDrawBegin(1,0);
   SetIndexDrawBegin(2,0);
   SetIndexDrawBegin(3,0);
   SetIndexDrawBegin(4,0);

   
   IndicatorShortName("all1");

//----
   return(0);
  }
 
age_nt:
ビクター!私の理解が正しければ、あなたは助ける準備ができています......私はどこに "ロジックがない "のか理解できません。


ロシア語の構文や形態素に詳しいですか?

最初の投稿をもう一度読んでみてください。

 
rid:

そう、便利なケースが登場するのです

//---------------

p/s - ビクター、今度の(明日の)お誕生日おめでとうございます。

に賛成!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!