[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 181

 

みなさん、こんにちは。


初心者からの質問です。

外部ファイルからのデータをチャートに表示するインジケータがあるのですが、どうすればいいですか?以下は私の質問です。

1.標準のファイル選択ダイアログボックスを 開くにはどうしたらよいですか?

2.コードからのファイルを開くことができるフォルダの制限を回避する方法を教えてください(experts/files)。

3.チャート上に、クリックするとスクリプトを無効にできるコントロールを作る方法。主な問題は、EAを作る方法、例えばボタンのいくつかの種類またはそれを介してユーザーと対話するために何か他のもの)?


ありがとうございます。

 

オタクの方にエラーの内容を説明してあげてください

FinamデモでAlert(BId)の価格を表示する簡単なスクリプトを作っています。

すべてうまくいくのですが、EURUSDの 相場は小数点以下5桁なのに、なぜか価格は小数点以下4桁で表示されています。IMAも小数点以下4桁で計算され、5桁ではありません。

何が間違っているのか、アドバイスをお願いします!

 
Onesto:

オタクの方にエラーの内容を説明してあげてください

FinamデモでAlert(BId)の価格を表示する簡単なスクリプトを作っています。

すべてうまくいくのですが、EURUSDの相場は小数点以下5桁なのに、なぜか価格は小数点以下4桁で表示されています。IMAも小数点以下4桁で計算され、5桁ではありません。

何が間違っているのかご指導ください。

ターミナルでは小数点以下4桁で表示されるため、doubleを文字列に 変換してから正しい小数点以下の桁数で表示するようにしてください。

アラート(DoubleToStr(Bid,Digits));

 
sanderz:

みなさん、こんにちは。


初心者からの質問です。

外部ファイルからのデータをチャートに表示するインジケータがあるのですが、どうすればいいですか?以下は私の質問です。

1.標準のファイル選択ダイアログボックスを開くにはどうしたらよいですか?

2.コードからのファイルを開くことができるフォルダの制限を回避する方法を教えてください(experts/files)。

3.チャート上に、クリックするとスクリプトを無効にできるコントロールを作る方法。主な問題は、EAを作る方法、例えばボタンのいくつかの種類またはそれを介してユーザーと対話するために何か他のもの)?


ありがとうございます。

1-2.スタンダードって何?いずれにせよ、最初の2問は、WinAPIと/または外部DLLを 使用する必要があります。

3.スクリプトから直接、ループ内のグラフィックアイテムを作ってその座標を追跡し、ドラッグするとスクリプトが一時停止またはアンロードされるようにする。

一番簡単な方法は、ソースコードを見ることです。コードベースにはたくさんの視覚的なギミックがあります。

 
フォーラムメンバーの皆様、Quicksilverから全取引の表を エクセルに出力し、オンラインで更新されるように、また、表示行数を変更できるようにするのを手伝っていただけないでしょうか?試してみましたが、テーブル全体が表示され、更新されません。
 
splxgf:

1-2.標準的なものはどれですか?しかし、いずれにせよ、最初の2つの質問は、WinAPIや外部DLLを必要とします。

3.スクリプトから直接、ループ内のグラフィック要素を作ってその座標を追跡し、それをドラッグするとスクリプトが一時停止またはアンロードされるようにする。

一番簡単な方法は、ソースコードを見ることです。コードベースには視覚的なギミックがたくさんあります。

ありがとうございます。
 
splxgf:

すべて正しく実行されていますが、ターミナルでは小数点以下4桁で出力されます。doubleを文字列に変換してから正しい桁数で出力してください。

アラート(DoubleToStr(Bid,Digits));


ありがとうございます、よくわかりました。

Expert Advisor本体で計算する場合、データは5桁と4桁のどちらで来るのですか?

 
Onesto:


ありがとうございます、これでわかりました。

また、EA本体で計算する場合、データは5で行くのか、4で行くのか?

Alert(Bid*100000)で確認した通常の桁数で計算されます。
 

拝啓、またまた質問です。

double hc=(iHigh(NULL,0,1)-iClose(NULL,0,1));
double cl=(iClose(NULL,0,1)-iLow(NULL,0,1));

if((iClose(NULL,0,1)<iOpen(NULL,0,1))&&(hc>cl))

pre12=OrderSend(Symbol(),OP_BUY,0.1,Ask,3,0,Ask+100*Point,"",0,0,CLR_NONE)。


15分足チャートでテストしていますが、1分間に17~40回ポジションが開設されてしまうという問題があります。そして、注文は15分に1回以上開かないことになっています。このとき初めて、直前のローソク足の終値がその始値よりも低いという条件が満たされる。

なぜそうなのでしょうか。

 
NaVolne:

拝啓、またまた質問です。

if((iClose(NULL,15,1)<iOpen(NULL,15,1))&&(hc>cl))

pre12=OrderSend(Symbol(),OP_BUY,0.1,Ask,3,0,Ask+100*Point,"",0,0,CLR_NONE)。


15分足チャートでテストしていますが、1分間に17~40回ポジションが開設されてしまうという問題があります。そして、注文は15分に1回以上の頻度で開いてはいけないと想定しています。このとき初めて、直前のローソク足の終値がその始値よりも低いという条件が満たされる。

なぜそうなのでしょうか。


注文は15分に1回、冒頭で開く必要があると仮定します。

変数宣言 領域に

double OpenBar=0; 

 

int start()
   {
    //Проверка на начало нового бара
    double CurOpenBar=iOpen(NULL,PERIOD_M15,0);  
    if (OpenBar==CurOpenBar) {return;} else {OpenBar=CurOpenBar;}
    //ваш код
   }


というような

しかし、あなたの条件はすべてのティックで満たされるので、注文はすべてのティックで開かれます....