新参者の冒険 - ページ 9

 

Timです。


ストラテジーテスターでは まだ何も取引していませんが、コンパイル時にエラーが報告されないところまでコードを修正しました(あなたが強調したいくつかのバグを修正しただけです)。しかし、私はあることに困惑しています。


int EntryRules(string CurrencySymbol, double TopFilter, double BottomFilter)  //Tim: string CurrencySymbol not CurrencySym right?
{

      emas_Up =  (ema7>ema14) && (ema14>sma50);
      if (emas_Up && Ask < TopFilter) // Note the TopFilter value  is a parameter passed to the function just like CurrencySymbol. These have not been defined anywhere as global variables.
         result = LONG_ENTRY;   // We have assigned the manifest constant to the local variable result 



TopFilterとBottomFilterというパラメータです。TopFilters'と'BotFilters'パラメーターのことでしょうか?(これらはグローバルレベルで変数として定義したものです。下にあるものです。これを反映してコードを変更したところ、エラーは出なくなりました(これはデバッグ文を適宜変更するという意味です)。この件に関して、あなたの第一人者はどのようにお考えでしょうか?

   double TopFilters[NUM_CURRENCY_PAIRS];     // So we just define uninitialised arrays of the required size
   double BotFilters[NUM_CURRENCY_PAIRS];    // This is Step 1/2 for array building. Step 2/2 is to assign a numerical value to each element, 
ファイル:
 
niko:

CBさん、理想はマルチペアEAで、これはTimと私が作ろうとしているものです。しかし、シングルペアEAも、私にコーディングの仕方を教えてくれるので、非常に望ましいと思います。皆さんのコーディングスタイルは様々で、同じようなアイデアをどのように違う形でコーディングできるかを知ることは、私にとって素晴らしい訓練になります。それに、シングルEAを先に完成させて、それをマニュアルトレードに役立てようと思っていたのですが、どうやら両方のコードが同時に完成することになりそうです。

シングルとマルチの意味がよくわからないのですが。例えば、どのペアにもドロップできる単一のEAで、ドロップしたチャートのペアだけでトレードする - ドロップしたチャートのペアだけに基づいてすべてのトレードを決定する(維持するための単一のコードベース)。ただ、用語を整理することで、あなたが何を望んでいるのかが分かるようにしています。


CB

 

CBです。

私の曖昧な理解では、1.複数のペアを同時に取引する1つのEAを実行することができることです。2.2. 特定のチャートにドロップする必要があり、そのチャートのみに適用される単一のEA(問題は、例えば3つのチャートにドロップできる単一のEAを作り、その3つのチャートで動作することは可能でしょうか?以前試したのですが、なぜか1つのチャートしか実行されませんでした(他のチャートはすべて実行されませんでした)。

 
niko:

CBです。

私の曖昧な理解では、1.複数のペアを同時に取引する1つのEAを実行することができることです。2.2. 特定のチャートにドロップする必要があり、そのチャートのみに適用される単一のEA(問題は、例えば3つのチャートにドロップできる単一のEAを作り、その3つのチャートで動作することは可能でしょうか?以前試したのですが、なぜか1つのチャートのみ実行されました(他のチャートは実行されませんでした)。

はい、それは簡単に可能です。私のEAの1つです。

- 複数の異なるチャートにドロップできる(同じプラットフォームインスタンスで同時に実行されているもの、またはそれぞれ別のプラットフォームインスタンスで実行されているもの、いずれでもかまいません)

- 実行中のチャートに関連するペアにのみ基づいて判断する。

- そのチャートに関連付けられたペアのためにのみ取引を行います。


CB

 

ありがとうございます、CB。今週はもっと時間をかけて2つのコードを比較するつもりです。実際、両方のコードをプリントアウトして、自分の部屋に貼り付けて、何が起こっているのかもっと理解しようと思っています。

 
niko:

ありがとうございます、CB。今週はもっと時間をかけて2つのコードを比較するつもりです。実際、両方のコードをプリントアウトして、自分の部屋に貼り付けて、何が起こっているのかもっと理解しようと思っています。

もし、僕が残したコードの中で理解できないことがあったら、質問してください。


CBです。

 
CBさんありがとうございます。絶対そうします!今、その道を進んでいるところです。
 

CB、あなたの知恵が必要です。コンパイラのエラー(しかも以前遭遇したのと同じもので、どうしたらいいのかわからない)がわからないようです。エラーの順番に。次回はどうすればいいかわかるように、エラーごとにいくつかの光を教えていただけませんか。


1.説明: " 'for' - semicolon expected." 私の理解では、この行は;を必要としないので、どこかで私たちのブラケットに何かが起こっています。

for (int c=0;c<NUM_CURRENCY_PAIRS;c++) 


2. 説明文: "'c' -expression on global scope not allowed'(グローバルスコープでの'c'式の使用は許可されません)。上記と同じ行です。これは理解できません。どうしてグローバル変数の宣言を許可しないのでしょうか?さらに多くの人がこのコードを使っていて、問題なく動作しています。

3. 説明 "NUM_CURRENCY_PAIRS" - グローバルスコープでの式は許可されていません"。しかし、私はすでにこれをexternalsの次に宣言したので、これ以上グローバルになることはできません!

4. description : "{式がグローバルスコープで許可されていません。下のコードの括弧が気に入らないようです。

{
   sSignal = fnGenerateSignal();						// change this to "sGignal = fnGenerateSignal();" ***done
   if (fnShouldWeTrade())
    fnTrade();                                                            // change this to "fnTrade();"**done
   return(0);
   }


ありがとうございました。

ニック

 
niko:

CB、あなたの知恵が必要です。コンパイラのエラー(しかも以前遭遇してどうしたらいいかわからなかったものと同じ)を理解できないようです。エラーの順番に。次回はどうすればいいかわかるように、エラーごとにいくつかの光を教えていただけませんか。


1.説明: " 'for' - semicolon expected." 私の理解では、この行は;を必要としないので、どこかで私たちのブラケットに何かが起こっています。


2. 説明文: "'c' -expression on global scope not allowed'(グローバルスコープでの'c'式の使用は許可されません)。上記と同じ行です。これは理解できません。どうしてグローバル変数の宣言を許可しないのでしょうか?さらに多くの人がこのコードを使っていて、問題なく動作しています。

3. 説明 "NUM_CURRENCY_PAIRS" - グローバルスコープでの式は許可されていません"。しかし、私はすでにこれをexternalsの次に宣言したので、これ以上グローバルになることはできません!

4. description : "{式がグローバルスコープで許可されていません。下のコードの括弧が気に入らないようです。


ありがとうございました。

ニック

コンパイルしようとしているコードの全体を投稿してもらえますか?Ta.


CB

 
君の願望は僕の願いだ
ファイル: