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

 
こんにちは、助けを求めています。あるバーとその終値があります。どのように実装するか:フクロウは、現在の価格とあるバーの終値の差が設定した価格よりも大きい場合にポジションを建てる 必要があります。私は、あるバーの終値と現在のバーの終値の差しか計算できません(現時点での価格では計算できません-私が実現したいのはこれです)。
 
mmero:

プロフェッショナルの皆様へ

隣り合う2つのローソク足の重なりを計算する最も正しい方法と最も速い方法を教えてください。

そのための指標はずっと前から書かれていて、このデータベースの中に眠っているのではないかと思うのですが、それが見つからないのです。

私ならこうする。

double coef;


if(NormalizeDouble(MathMax(High[i],High[i+1])-MathMin(Low[i],Low[i+1]),Digits)==0)  coef = 0;   //обе свечи нулевые и на одном уровне
if(MathMin(High[i],High[i+1])<MathMax(Low[i],Low[i+1]) coef = 0;                                //свечи не перекрываются

else coef = (MathMin(High[i],High[i+1])-MathMax(Low[i],Low[i+1]))/(MathMax(High[i],High[i+1])-MathMin(Low[i],Low[i+1]))
 
tommy27:
こんにちは、助けを求めています。あるバーとその終値があります。どのように実装するか:フクロウは、現在の価格とあるバーの終値の差が設定した価格よりも大きい場合にポジションを建てる必要があります。私は、あるバーの終値と現在のバーの終値の差を計算することだけに成功しています(現時点での価格とは計算できません - これが私が達成したいことです)。
iClose(0,0,0)を使用して、現在のタイムフレームの現在のシンボルの現在の買値を取得します。
 
oDin48:

皆さん、ある時間内にあるポイント数だけ変化した後に何らかのアクションを起こすようなコードを教えてください。

例10分以内に価格が20pips変化したら買いを入れる。

もっと正確に。

1. 10分間で20ピップスぴったり

2.過去10分以内に20ピップス以上の差があること。

3. 直近10分間で20点以上変化した場合

...

???

 
alsu:
iClose(0,0,0) を使用して、現在のタイムフレームの現在のシンボルの現在のビッド価格を取得します
ありがとうございます。Closeでやってみましたが、アドバイス通り、
StartPrice1 =  iClose(0,0,0);
//StartPrice1 = Close[0];
Delta1 = MathAbs (Price0 - StartPrice1);
Comment (Delta1);
Print ("Raznica= ",Delta1);
しかし、結果は新しいバーが表示されたときのみ更新さ れます。 私は、 すべてのティックで 変化を確認し、追跡したいです。
 
alsu:
iClose(0,0,0) を使用して、現在のタイムフレームの現在のシンボルの現在のビッド価格を取得します
まだ閉じていない場合、現在のバーの終値 iClose(0,0,0)を取得することは可能でしょうか?シフトは>0でいいと思う。
 
カスタムインジケータにカスタムインジケータを 適用することが可能かどうか教えてください。標準インジケータでそれを行う方法(前または最初のインジケータのデータに適用することを選択)? 私はカスタムインジケータの計算時に標準価格定数(終値、開始、標準価格・・・)だけを見つけましたが、インジケータではなく価格を添付する方法は見つかっていないのです。
 
tommy27:
こんにちは、助けてほしいことがあります。あるバーとその終値があります。この機能の実装:フクロウは、現在の価格と指定したバーの終値の差が指定したものよりも大きい場合、ポジションを開く必要があります。私は、あるバーの終値と現在のバーの終値の差しか計算できません(現時点での価格では計算できません-私が実現したいのはこれです)。
int bar=1; // заданный бар
int raznica=10; 
if (MathAbs(iClose(0,0,bar)-Bid)>raznica*Point)
   { OrderSend(...)
     ...
   }

ただし、この条件を実行した後、EAがすべてのティックでポジションをオープン しないように、追加の制限を加える必要があることに注意してください...

 
paladin80:
現在のバーiClose(0,0,0)がまだ閉じていない場合、終値を決定することは可能でしょうか?シフトは>0であるべきだと思います。 。

shift=0 のとき、 現在の価格を 返す

 
paladin80:
現在のバーiClose(0,0,0)がまだ閉じていない場合、終値を決定することは可能でしょうか?シフトは>0でいいと思います。 。

ゼロバーの終値は 常に存在しますが、新しいティックの到来とともに変化します。