"ダミー "からの質問 - ページ 208

 
talliy: ある条件が発生したときに、条件の継続時間ではなく、一つの値を取るように変数を設定する方法を教えてください。
詳細を教えてください。という文言が不明確であり、また、その状態の期間も不明確です。
 
Yedelkin:
細かいところではどうでしょうか?状態の期間中でない」という表現が不明確です。
例えば、あるバーを見つけるとき。この配列のバーは、例えば3本目です。このバーが可変真理の3本目であるのに対して。タイムフレームによると3番目です。ログに記録する必要があります。ティック するごとに、4本目のバーになるまでレコードの数が増えます。そこで問題は、変数に一度だけtruthを代入し、一度だけさらなる条件を満たすが、変数がtruthを持つまではtickごとに代入しない方法をとることである。
 
おはようございます、アドバイスお願いします。貴サイトのシグナルに登録しました。でも、どう来るのかよくわからない?また、どのように実行されるのでしょうか?MT4で何か設定をする必要があるのでしょうか、それとも私の契約、口座番号、取引をコピーするブローカーサーバーだけで十分なのでしょうか?パソコンの電源が切れていたら?以上が質問です。
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете - Документация по MQL5
 
talliy:
例えば、あるバーを見つけるとき。この配列のバーは3番目と言うことです。このバーが変数真理の3番目である限り。タイムフレームによると3番目です。ログに記入する必要があります。ティックするごとに、4本目のバーになるまでレコードの数が増えます。そこで質問ですが、変数が真理を持つまでの各ティックではなく、変数の真理の代入とさらなる条件の成立を同時に行うにはどうしたらよいのでしょうか。
もしかして、毎ティックではなく、新しいバーが 現れたときだけ、必要なバーの番号を決めるということですか?ここで、IsNewBarという単語の組み合わせについて、フォーラムで検索してみましょう。
 
talliy: 例えば、あるバーが見つかったとき。この配列のバーは3番目と言うことです。このバーが3本目である限り、変数は真となる。タイムフレームによると3番目です。これはジャーナルに入力する必要があります。ティックするごとに、4本目のバーになるまでレコードの数が増えます。そこで問題は、変数がtrueになるまでtickを繰り返すのではなく、変数truthへの代入を1回だけ行い、さらに条件を1回だけ満たすようにするにはどうしたらいいかということです。

または、最初の変数がprintに送られた場合に値trueを代入する別の変数を入力します。

bool bar_printed=false;
...
if()                     //Проверяете нужное условие
  {
   ...
   if(!bar_printed)
     {
      Print("Нужное условие выполнено");
      bar_printed=true;
     }
  }
 

ユーザー様、管理者様、こんにちは!以下の問題でお困りではありませんか?私は無料の取引シグナル サービスをテストすることにしました https://www.mql5.com/ru/signals/mt4 私は命令のようにパラメータを設定したが、何も起こりません。以下のようなエラーでログを入力しました。

2012.11.16 11:04:14 '340421': Signal - synchronization failed, processing of trade actions disabled
2012.11.16 11:04:14 '340421': Signal - synchronization terminated, cannot copy position [#37469421 buy 10.00 USDCHF at 0.9411 sl: 0.9231 tp: 0.0000]
2012.11を。16 11:04:14 Symbol: no prices for symbol U‰`¤B<u}{њWr1zzfußtљUYShchµtuNЏEDT`P}sh197XT¬n "zlss®VYЏ--¶l_51B↩l
KЂSh 9ґnhuP©h_Yu6nzj-KSQr-ÏS<"MSHr©±ЇРÌ$eљ*t6&SО
.y*'HushR"±,emkЊG€a!ÇV®jtvЉGLYkҐj>5ґ DP@m!)'HD_45A" јўћ‡..aў;srI


カスタマイズの何が問題なのか?私のブローカーはFBSです

Торговые сигналы: MetaTrader 4
Торговые сигналы: MetaTrader 4
  • www.mql5.com
Торговые сигналы для MetaTrader 4 с автоматическим исполнением на вашем счете
 
Yedelkin:

または、最初の変数がprintに送られた場合に値trueを代入する別の変数を入力します。

ご指摘のケースでは、tick毎に変数がfalseになり、ログに出力した後にtrueになります。その後、新しいティックが発生し、onTick() 演算子はそのプログラムを上から下へ実行します。そして、そこで変数は再びfalseとなり、もし変数がfalseならprintという条件で。それ故に、ログは刻々とその項目でいっぱいになっていく。チェック済み!!!

ステートメントでプログラムの実行を 論理的に理解しようとして、TimeCurrent() 関数を使用しました、以下はそのコードです。

その結果、刻みの時間が分単位で0、秒単位で0であるものだけが記録されます。時計はもっと複雑なんです。変わるのは時報だけです。0を入れるとフィルターとして機能し、稀に「ハンマー」が00時の位置にある場合にエントリーを生成します。同時に録画の回数も減りましたが、それでもより良いものを求めています。

  double r=0;
  double x=0;
  double z=0;
  double rr=0;
  double xx=0;
  double zz=0;
  double a=0;
  r = Open[1];
  x = Close[1];
  z = r - x;
  xx=Low[1];
  a=x-xx;
  zz = 2*z;
MqlDateTime secc;
bool logno = false;
  if (Open[3]<Close[3] && Open[2] <Close[2])         
    if (Open[1]==High[1]&&Close[1]<Open[1])
     if (a>=zz){
    /* if (!logno){
     Print ("На графике свечная модель -Молот");
     logno = true;}*/
     TimeCurrent(secc);
     while(secc.sec==0 && secc.min==0 && !IsStopped())
     {
 Print ("На графике свечная модель -Молот");
 break;
     
        }

これは、「ハンマー」ローソク足パターンをチャート上に描き、見つけるための簡単な試みである。ちなみに、変数がfalseの例も、ここではコメントアウトしています。

ハンマーパターンとは:下部の影が本体の2倍以上、3倍以下であること。上側の影がないか、非常に短い(ローソク足の10%以下)。長期的なプレイでは本体の色は関係なく、短期的なプレイでは白ハマの方が黒よりずっと強いのです。

 

また、価格の後ろにある変数の移動を禁止する方法を明確にしたいと思います。

例シンプルなストップトロール。20pipsの距離で価格を追うように変数に指示します(例)。つまり、変数=買値-20pips(買ったと仮定)です。価格が上がり、それにうまく追従する。その後、価格が下がり、その変数が同じレベルでその値を維持する必要があります。

そこで質問なのですが、ある時点で変数が値をとらないようにするにはどうしたらいいのでしょうか?

 
paladin800:
もしかして、毎ティックではなく、新しいバーが 現れたときだけ、必要なバーの数を決めるということですか?ここで、IsNewBarという単語の組み合わせについて、フォーラムで検索してみましょう。

ありがとうございます!!!参考になる!!!今後、重宝することでしょう。

でも、ちょっとズレてるかな...。そのあたりも考えてみてください。

 
talliy:

ご指摘のケースでは、各ティックでの変数はfalseで、ログプリントを実行した後にtrueになります。そして、新しいティックとonTick() オペレータがそのプログラムを上から下へと実行します。そして、そこで変数は再びfalseとなり、もし変数がfalseならprintという条件で。それ故に、ログは刻々とその項目でいっぱいになっていく。チェック済み!!!

ステートメントでプログラムの実行を 論理的に理解しようとして、TimeCurrent() 関数を使用しました、以下はそのコードです。

その結果、刻みの時間が分単位で0、秒単位で0であるものだけが記録されます。時計はもっと複雑なんです。変わるのは時報だけです。0を入れるとフィルターとして機能し、稀に「ハンマー」が00時の位置にある場合にエントリーを生成します。とはいえ、録画の数は減りましたが、それでもより良いものを求めています。

これは、「ハンマー」ローソク足パターンをチャート上に描き、見つけるための簡単な試みである。ちなみに、変数がfalseの例も、ここではコメントアウトしています。

ハンマーパターンとは:下部の影が本体の2倍以上、3倍以下であること。上側の影がないか、非常に短い(ローソク足幅の10%以下)場合。長期的なプレイでは本体の色は関係なく、短期的なプレイでは白ハマの方が黒よりずっと強いのです。


static bool logno = false;