どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 714

 
キエフ時間またはGMTでのすべての取引所のランチタイムの開始と終了のデータはどこで見つけることができますか?
 
alexey1979621:

こんにちは、私はすでに711ページで同様の質問をしましたが、残念ながら誰も回答してくれませんでした。

私はこうしています。

私は、状況を累積位置ゼロ(ロック)に持っていき、ロックを閉じます。

さて、ディテールについて。

1.ポジションの集計を行う。

逆順序

買いの場合、注文ロット分だけポジションの総量が増加します。

売りの場合、総ポジションは注文ロット分減少 します。

受注検索サイクルの終了

2.ロケーションを作成する。

ポジションの合計がゼロを超えたら、売る。

総ポジションがゼロを下回れば、買います。

そうでなければ、何もしない。

ロットサイズは、集約されたポジションと同じです。

3.たくさん閉じる(ポジションが重なる)

無限ループ( while (true) )

買い注文と売り注文のティックをゼロに戻す

注文をループする

買い注文をコミットする

売り 注文を出す

オーダーループを閉じる

もし(売りと買いがあれば)クロスクローズ

それ以外の場合は無限ループを抜ける(break)

無限ループの終わり

では、このアルゴリズムを選択した言語(MQL4)でプログラミングしてみましょう。

 

注文の 終了時刻を設定する方法を教えてください。

Data_1=iTime(Symbol(),PERIOD_D1,0) +86400; //注文のライフタイム

すでに市場に出ている場合(つまり、すでに約定されている場合)には、クローズするかどうか

 
korobok777:

注文の終了時刻を設定する方法を教えてください。

Data_1=iTime(Symbol(),PERIOD_D1,0) +86400; //注文のライフタイム

すでに市場に出ている場合(つまり、すでに約定されている場合)には、クローズするかどうか

ノー
 
artmedia70:
ノー
ありがとうございました。
 

皆さん、こんにちは。私はファイル操作をしたことがないのですが、しなければならなくなり、解らなくなってしまいました。

毎日数回、csvファイルにデータを書き込むタスクです。

それは、今日24.09.2014データは、型の異なるセルに行に書き込まれます。

A B C

1 日付|値|値

本日のデータに変更があった場合、2014.09.24の行を上書きします。

の場合、新しい行に 書き換えます。

タバコを吸っているのに、タバコが吸えない・・・。

 
VOLDEMAR:

皆さん、こんにちは。私はファイル操作をしたことがないのですが、しなければならなくなり、解らなくなってしまいました。

毎日数回、csvファイルにデータを書き込むタスクです。

それは、今日24.09.2014データは、型の異なるセルに行に書き込まれます。

A B C

1 日付|値|値

本日のデータに変更があった場合、2014.09.24の行を上書きします。

の場合、新しい行に書き換えます。

タバコを吸っているのに、タバコが吸えない・・・。

void Запись()
{
  int handle;
  string st=TimeToStr(TimeCurrent(), TIME_DATE);
  string filename = st+" Bid_Ask.csv"; // Формируем имя файла
  handle = FileOpen(filename,FILE_CSV|FILE_READ | FILE_WRITE,';');
  if(handle < 1)
  {
    Print("Не удалось создать файл. Ошибка #", GetLastError());
    return;
    //FileClose(handle);
  }
  
  FileWrite(handle,                   
            " Время ",
            " Bid ",
            " Ask ",
            " Volume "); // заголовок
  FileSeek(handle, 0, SEEK_END);
  FileWrite(handle,
            TimeToStr(TimeCurrent(),TIME_MINUTES|TIME_SECONDS),
            Bid,
            Ask,
            Volume[0]);
 
  FileClose(handle);
  return;
}
きっとこんな感じなんでしょうね。
 
r772ra:
おそらくこんな感じでしょう。

また、データが変更された場合、最後の行はどのように書き直せばよいのでしょうか?

 
VOLDEMAR:

データが変更された場合、最後の行はどのように書き直せばよいのでしょうか?

FileSeek(), help.

 

データが変更された場合、fileseekで上書きする場所へのポインタを置き、標準のfilewrite...メソッドで上書きし、ファイルの終わりを記憶してWinApi関数でトリミングする必要があります。

あるいは、標準的な方法で、有用な情報が終わる位置をファイルの最後に書き込んでから、その位置を読み取る。(位置を別のファイルに書き出すことも可能です)。

でもどうせならトリミングした方がいいし、標準のトリミングツールはないし((

this isずん子2014.09.12 20:19#.

WinApiの機能として面白いかもしれない