intOnInit()
{
EventSetTimer(1);
MqlDateTime date;
TimeLocal(date);
offtimeCreate(date); // Рисуем на графике заполненный прямоугольник (не торговая зона) с 21:00 до 23:59 в день указанный в переменной datereturn(INIT_SUCCEEDED);
}
...
void onTimer()
{
MqlDateTime date;
TimeLocal(date);
if (date.hour==9 && date.min==0 && date.sec==0) offtimeCreate(date); // Каждое утро, в 9:00, рисуем новую "не торговую зону" для дня указанного в переменной date
}
...
週末にオープニング スクリプトが動作するかどうかを確認する方法はありますか?
OnCalculate()で全てのティックを処理するのはインジケータのみです。スキップなしで。
あ、いえ。そして、彼は失敗する。でも、他の人よりは少ない。しかし、それはスキップする。
それはよかった、ありがとうございます。
もうひとつ質問です。
オーダーセレクト
注文を選択して、さらに作業を行うことができます。関数が正常に終了した場合、true を返す。関数が失敗した場合、false を返す。エラーの情報を得るには、GetLastError() 関数を呼び出す必要があります。
OrderSelect()
ulong ticket// 発券する
);
パラメータ
チケット
[ご注文のチケットです。
このチケットはどのように割り当てられるのですか?どこで手に入るの?あるいは、どのように設定すればよいのでしょうか?
オーダーゲットチケット
該当する注文のチケットを返し、さらに関数で操作するための注文を自動的に選択します。インデックスごとにすべてのオーダーに目を通し、必要であればチケットを取得しなければなりません。この機能は、注文そのものも選択することになりますが。チケットはブローカーが設定したもので、私たちはそれを変更することができません。
皆さん、こんにちは。
私は、毎日チャートに「非取引時間帯」を描画する関数を書きました。
しかし、ここで問題が発生します。これを起動すると、OnInitモジュールはそのまま描画しますが、OnTimerモジュールでトリガーすると、何らかの理由で日付変数がOnInitモジュールで割り当てられた値を保持するのです。
質問:なぜですか?
皆さん、こんにちは。
私は、毎日チャートに「非取引時間帯」を描画する関数を書きました。
しかし、問題があります。OnInitモジュールで実行されると、日付はそのまま描画されますが、OnTimerモジュールで実行されると、何らかの理由で、日付変数はOnInitモジュールで割り当てられた値を保持します。
質問:なぜですか?
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
バグ、バグ、質問
カルプトフ ウラジミール, 2016.01.09 20:51
タイマーの変数dateに、OnInit()で定義した値が渡されると考える根拠は何でしょうか?
ゾーンを描画する関数を見る必要があります。
完成した。
正しくは、onTimerではなく、OnTimerとなります。
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
バグ、バグ、質問
ingfx さん 2016.01.09 21:20
A)ビジュアル的に見ると、「時間帯」は今日の21:00から23:59まで描かれているのではなく、昨日の21:00から今日の23:59まで描かれているのだから
B) グラフィカルオブジェクトのプロパティ(網掛け長方形-「タイムゾーン」)を開くと、最初の変数が変化していない、つまり昨日の21:00と同じ値になっていることがわかります。
はい、OnTimerは、ここに書き直したときにミスをしました....コード自体は正しい
コードを確認したはずです。あなたの断片を縫い合わせるのに疲れている - ので、ここで、コードを確認してください。OnTimerでは、ローカル タイムを代入し、初期化時とタイマー時のプリントを比較します。
コードを確認したはずです。
ウラジミールさん、お待たせしました。
本当にコードに間違いがあったのか.
これからはもっと気をつけます。