エリート指標 :) - ページ 305

 

NewTrader、私が友人に作ってもらった、デジタル フィルターを使ったEAを見てもらえるかどうか知りたかったんです。私はあなたが主にデジタルフィルターを扱っていることを知っているので、それについてあなたの見解を得ることができるかどうかを確認したかったのです。私はPMを送ったが、私はあなたの最後のPMを受信することができませんでしたので、私はあなたが私のものを受信することができるかどうかわからない。

ファイル:
 
hazelj80:
このインジケーターにメールや音、ポップアップのアラートを作ることはできますか? この辺りで見つけたのはかなり珍しいものですが、複数の時間枠の確認や他のツールと組み合わせて使うと良さそうです。

Mladenです。

Hazelさんが投稿されたこのSEFC084というインジケータは面白そうですね。また、私が見つけたMTFバージョンも添付します。ちょっと出来すぎのような気もしますが、コードを見て、リペインターかどうか確認してもらえますか?もしそうなら、NRPにすると使えなくなるようなものなのでしょうか?

ご意見をお聞かせください。

よろしくお願いします。

ポール

ファイル:
 

ポール、ヘイゼル

SEFCは太陽風の "仮の姿"

これは、同じ(12)期間の太陽風とSEFCの比較である。週末に何か良い情報があれば良いのですが、私の唯一のアドバイスは、"sefc "インジケータを忘れることです。

よろしくお願いします。

ムラデン

ファイル:
sefc.gif  31 kb
 
SEFCは "仮装 "した太陽電池の風

SEFCという言葉を目にするたびに、私はひどく失望することを覚悟しなければならないようです。

 

Mladenです。

その構成で試してみましたが、やはり1時間に1回以上の取引がたまにあります。

以下のようにしたいのですが。例えば、15:05に買い注文が出され、15:20に利食いまたは他の決済ルールで決済されたとします。この場合、次の買い注文は、たとえその前に買い条件が満たされていたとしても、16:00(新しいバーが表示されたとき)より早くは出せないようにする必要があります。テイクプロフィット以外のクローズは、バーの終わりで行いたい。

mladen:
グレッグ

この投稿を見てください :https://www.mql5.com/en/forum/173219/page172

1つの買い注文と1つの売り注文を管理するためのすべてのロジックがあります。もし、もっと説明や手助けが必要な場合は、私に知らせてください。

よろしくお願いします。

ムラデン
 
ismael360:
NewTrader、私が友人に作ってもらったデジタルフィルターを使ったEAをあなたに見てもらえるかどうか知りたかったのです。私は、あなたが主にデジタルフィルターを扱っていることを知っているので、それについてあなたの意見を聞くことができるかどうかを確認したかったのです。私はPMを送ったが、私はあなたの最後のPMを受信することができませんでしたので、私はあなたが私のものを受信することができるかどうかわからない。

Ismaelさん、こんにちは。

返事が遅れて申し訳ありません。あまりに忙しくて。

メールとPMも送りました。

よろしくお願いします。

 

グレッグ

現在のバーに注文があるかどうかをチェックする関数を以下に示します。
int countOpenedOnACurrentBar()

{

int openedAtBar = 0;

datetime startTime = Time[0];

datetime endTime = Time[0]+Period()*60;

for(int i=0; i < OrdersTotal(); i++)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == false) break;

if(OrderMagicNumber() != MagicNumber) continue;

if(OrderSymbol() != Symbol()) continue;

if(OrderOpenTime()=endTime) continue;

openedAtBar++;

break;

}

return(openedAtBar);

}

[/php]
この関数の目的は、現在のバーで開かれたすべての注文を数えることです(したがって、EAが接続されている時間枠に依存します)次に、コードのどこかにこのようなものを追加する必要があります。
if (countOpenedOnACurrentBar()==0) then it can trade[/php]
もし、特定の時間枠をチェックしたい場合(例えば1時間枠の場合)、countOpenedOnACurrentBar()を以下のように修正する必要があります。
php]int countOpenedOnACurrentBar(int timeFrame)

{

int openedAtBar = 0;

datetime startTime = iTime(NULL,timeFrame,iBarShift(NULL,timeFrame,Time[0])).datetime endTime = iTime(NULL,timeFrame,iBarShift(NULL,Time[0]

));

datetime endTime = startTime+timeFrame*60;

for(int i=0; i < OrdersTotal(); i++)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == false) break;

if(OrderMagicNumber() != MagicNumber) continue;

if(OrderSymbol() != Symbol()) continue;

if(OrderOpenTime()=endTime) continue;

openedAtBar++;

break;

}

return(openedAtBar);

php]if (countOpenedOnACurrentBar(PERIOD_H1)==0) then it can trade
上の例は、直近の1時間足で注文がオープンされたかどうかをチェックします(これだと1時間足で1つの注文しか取引できない)。その場合、timeFrame = MathMax(timeFrame,Period()) のように記述すると、そのようなトラップを回避できます。

____________________________

注文の間隔を指定したい場合、最も簡単な方法は、すべての注文をループして最後の注文(単純に注文の 最大のオープン時間)を見つけ、その時間に3600を加えることです:もしTimeCurrent() < その時間より短ければ取引できません。この方法の問題点は、履歴にたくさんの注文がある場合に時間がかかることです(メタトレーダーはポジションによる注文のアクセスは時間による注文を保証しないと明言しているので、すべての注文をループする必要があります)。

kalusao:
Mladenです。

この設定で試してみましたが、それでも1時間に1回以上の取引が発生することがあります。

以下のようにしたいのですが。例えば、15:05に買い注文を出し、15:20に利食いまたは他の決済ルールで閉じたとします。この場合、次の買い注文は、たとえその前に買い条件が満たされていても、16:00(新しいバーが表示されたとき)より前に出してはいけません。テイクプロフィット以外のクローズは、バーの終了時に行いたい。
 

ムラデンさん、こんにちは。

もし、MTFのパラメータが なければ、追加していただけませんか?

ありがとうございます。

ファイル:
 

フライトックス

こちらをお試しください

EAですが、ティックが入ってこないときでも時間を表示します(ティックが入ってきたときだけ動作し、ティックが入らなければ時計の更新がないインディケータとは異なります)。追加の時間枠も設定できます(AlertCandleTFで-この場合、現在の時間枠だけでなく「他の」時間枠にも残り時間を表示します-写真のように、右下 は4時間枠、日足データのキャンドル付近は現在の時間枠です
PS:このスレッドでこのようなもう1つがありますが、この1つは、あまりにも "他の "タイムフレームのバーを表示するためにオンに警告を必要としないように変更されます。

よろしくお願いします

ムラデン

Flytox:
こんにちは、Mladenさん。

MTFパラメータを追加してください。

ありがとうございます。
ファイル:
eclock.mq4  8 kb
eclock.gif  20 kb
 

ありがとうございます。