[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 38

 
nuan:

チャーターとは 、30分後ではなく、同じ秒数でオーダーをクローズすることを意味します。


私はあなたの例のようにコードを入れました。


ロボットは他の理由で閉じることはありません。つまり、ストップや利益で閉じることはありません。


1 2011.07.29 00:00 購入 1 0.01 1.4328 1.3328 1.5328 0.00 1000.00
2 2011.07.29 00:01 close 1 0.01 1.4327 1.3328 1.5328 -0.10 999.90
3 2011.07.29 00:01 購入 2 0.01 1.4329 1.3329 1.5329 0.00 999.90
4 2011.07.29 00:01 close 2 0.01 1.4326 1.3329 1.5329 -0.30 999.60
5 2011.07.29 00:01 購入 3 0.01 1.4328 1.3328 1.5328 0.00 999.60
6 2011.07.29 00:03 close 3 0.01 1.4327 1.3328 1.5328 -0.10 999.50
7 2011.07.29 00:03 購入 4 0.01 1.4329 1.3329 1.5329 0.00 999.50
8 2011.07.29 00:03 close 4 0.01 1.4329 1.3329 1.5329 0.00 999.50


start()関数の一番最後に全部入れてください。 その前に業務があるはずです。

datetime TimeM30=iTime(NULL,30,0);
    if(TimeM30==prevtime) return(0); 
    prevtime = TimeM30;   
    CloseAllPosTime();
 
nuan:
start()内をこのオプションで置き換える。
 datetime CloseTime;
//=====================
 int start(){

   if(TimeCurrent()-CloseTime > 30*60){CloseAllPos();CloseTime=TimeCurrent();}//Можно поставить в любом месте функции старт.
  return(0);
 }
//====================
 
forexnew:

わかったよ。

0ドルをスタートとして、1回目の上乗せで口座開設を考えたらどうでしょう。アカウントに行われたすべてのリフィル(最初のリフィルを含む)をプログラムで決定することは可能でしょうか?


:-Р

漕ぐ方向が違うぞ...。:-)))

という関数があります。

double AccountBalance( ) 

を使えば、ある瞬間のクローズド・トレードによる口座残高の状態を定義することができます。

その後、-マーケットに参入したとします-オープンポジション で口座に浮いた赤字を、口座に入金して...。ここで、「初期」の市場ポジションの数量(分割前)を計算した、ドローダウン/利益に対する初期の「許容範囲」、例えば資本のパーセントポイント単位を維持するために、オープンポジションの数量(上方)を修正する分割量(ある場合)を決定する必要があります。この問題を解決するにはどうしたらいいのでしょうか。

 
CloseTime 
Нужно задавать этот параметр? если да то как?
 
nuan:


やめてくれこれは「中間」時間変数であり、常に最終クロージング時刻に等しい。

動作時間は、秒単位で設定します。あなたの場合、30×60です。
30を何らかの変数、例えばexstern int closetime = 30で置き換えることができます。
すると、closeetime*60のような時間になります。

 
charter:


やめてくれこれは「中間」時間変数であり、常に最終クロージング時刻に等しい。

動作時間は、秒単位で設定します。あなたの場合、30×60です。
30を何らかの変数、例えばexstern int closetime = 30で置き換えることができます。
すると、closeetime*60のような時間になります。

同じように試したところ、本体開始の最後にあるのですが...。なぜこうなるのか、理解できない。もしかして、他の選択肢があるのでは?
 
Roman.:


:-Р

漕ぐ方向が違うぞ...。:-)))

という関数があります。

を使用すると、ある時点でクローズしたトレードの取引口座の残高状態を判断することができます。

その後、-マーケットに参入したとします-オープンポジションで口座に浮いた赤字を、口座に入金して...。ここで、「初期」の市場ポジションの数量(分割前)を計算した、ドローダウン/利益に対する初期の「許容範囲」、例えば資本のパーセントポイント単位を維持するために、オープンポジションの数量(上方)を修正する分割量(ある場合)を決定する必要があります。この問題を解決するにはどうしたらいいのでしょうか。


最初に指定されたリスクに従ってStartBalance(開始残高)とStarLots(開始ロット)の比率を決定したのであれば、持分価値を決定する必要があります。

if(AccountEquity()<StartBalance) Top-up = (AccountBalance()+(StartBalance-AccountEquity()))*New Lot/StarLot

AccountCredit()を除いたものです。もちろん、私が正しく理解していればの話ですが。

 
nuan:
同じことを試したところ、本体起動の最後にあるのですが...。なぜそうなるのか、理解できない。もしかして、他の選択肢があるのでは?
他の何かのエラーを探す。
どちらの選択肢も使えるはずです。
 
ありがとうございました。
 

みなさん、こんにちは。質問があります。最も近い最大値と最小値を求める必要がある。ただし、Open[0]から+-10ポイント以内であることが必要です。

今はこうして持っています。

for (int i=1;i<100;i++)

if (High[i+1]<High[i] && High[i]>High[i-1] break;

は、最も近い最大値を見つけることができます。

High[i]>(Open[0]+0.0010) と High[i]<(Open[0]+0.0020) の比較を追加すると、このようになります。

if (High[i+1]<High[i] && High[i]>High[i-1] && High[i]>(Open[0]+0.0010) && High[i]<(Open[0]+0.0020)の場合break。

プログラムが間違った最大値を取得するのですが、何が問題なのでしょうか?

まだ最低限は試していません。