コーディングの方法は? - ページ 52

 
Devil2000:
私の知る限り、MQL4には "clock "関数はありません。

あなたはこれを試すことができます

if(TimeHour(TimeCurrent())==7)

{

if(TimeMinute(TimeCurrent())==15) B== 1;

if(TimeMinute(TimeCurrent())==30) B== 2;

if(TimeMinute(TimeCurrent())==45) B== 3;

}

if(TimeHour(TimeCurrent())==8)

{

if(TimeMinute(TimeCurrent())==0) B== 4;

if(TimeMinute(TimeCurrent())==15) B== 5;

if(TimeMinute(TimeCurrent())==30) B== 6;

}

もちろん、私は彼が持っていると思った

datetime clocks = TimeCurrent();

を追加したのだと思います。

ロバート

 
MrPip:
もちろん、私は彼が持っていると思った

datetime clocks = TimeCurrent();

を以前の行に追加しています。

ロバート

そうなんですか?前のページには見当たらないのですが。

これでうまくいくはずです。しかし、1時間では、時々、あなたのインターネット接続やサーバーの遅れによって、何分かの欠落が発生することがあります。

 

インジケータをEAに変換するプログラマを探しています。

皆さん、こんにちは。

私は、インジケータをエキスパートアドバイザーに変換するプログラマを探しています(または既存のインジケータで動作するスタンドアロンEA)。 それは単に信号が生成された場所を購入または売却する必要があり、プリセットの能力で以下を持っています。

*ロットサイジング

*ストップロスの設定

*トレーリングストップの設定

*口座残高 に基づく資金管理ロットサイジング。

添付は、インディケータの画像です。

ご興味のある方、またはお知り合いの方がいらっしゃいましたらPMお願いします。

よろしくお願いします。

ファイル:
indicator.gif  23 kb
 
Devil2000:
そうなんですか?前のページにはないですね。 これで動いているはずです。ただ、1時間だとネット回線やサーバーのラグで何分か欠けることがあります。

これは、クロックのコードで、異なるGMTで変更できるようにするためのものです。

double Clocks = TimeCurrent() - (Broker)*3600;

ブローカーはGMTでブローカーの時間です。

もう1つの問題のコードが必要なのですが、質問しすぎでしょうか?

私の問題。

もしEAが3日間稼働し、毎日の注文条件が満たされていれば、3つのフローティング売買、または6つのフローティング売買を持つことになります。

例:1日目=1枚の買いをオープンし、Tpにヒットして別の買いをオープン=1枚の買いをまだオープン

2日目 = 前の買いがまだ残っていて、別の買いを建てる = 2つの買いがまだ残っている。

3日目 = 2つの買いがまだ開いていて、別の買いが開いている = 3つの買いがまだ開いている

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

{

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

if(OrderSymbol()== Symbol () && OrderMagicNumber()== Magic_Number) { if(OrderSymbol()== Symbol () && OrderMagicNumber() == Magic_Number)

{

if(OrderType() == OP_BUY) buys++;

if(OrderType() == OP_SELL) sells++;

}

}

if (buys < 1) 買いを注文する。

if (sells < 1) 条件を満たしたら売りを指示

 

今日開封されたものだけをカウントしたい場合に使用します。

if(OrderType() == OP_BUY && OrderOpenTime() >= iTime(NULL, PERIOD_D1, 0)) buys++;
 

クイックヘルプが必要です。

以下のようなコードを持っています。

このルールに沿っているかどうか、誰かチェックして ください。

もしチャート上に取引がなければ、シグナルで1ロットをオープンします。

もしチャート上に1つの取引があれば、残りの注文はすべてダブルロットになります。

検証をお願いします。

total = OrdersTotal();

if(total>=2)

{

if(MA11>MA21 && MA12<MA22)

{

ticket=OrderSend(Symbol(),OP_BUY,2*Lots,Ask,5,Ask-stoploss*Point,0,0,Magic_number,0,Green);

return (0);

}

if(MA11MA22)

{

ticket=OrderSend(Symbol(),OP_SELL,2*Lots,Bid,5,Bid+stoploss*Point,0,Magic_number,0,Red).If(MA11MA22) { チケットを送信します。

return (0);

}

}

if(MA11>MA21 && MA12<MA22)

{

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,5,Ask-stoploss*Point,0,0,Magic_number,0,Green).のようになります。

}

if(MA11MA22)

{

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,5,Bid+stoploss*Point,0,Magic_number,0,Red).のようになります。

}

}

 

マーチンゲール?

希望が持てない......。

 
kjhfdgjfhdghdf:
マーチンゲールって、希望がないじゃないですか......。

心に留めておきます。

 

赤い文字に変更し、追加しました。

total = OrdersTotal();

if(total>=1)

{

if(MA11>MA21 && MA12<MA22)

{

ticket=OrderSend(Symbol(),OP_BUY,2*Lots,Ask,5,Ask-stoploss*Point,0,0,Magic_number,0,Green);

return (0);

}

if(MA11MA22)

{

ticket=OrderSend(Symbol(),OP_SELL,2*Lots,Bid,5,Bid+stoploss*Point,0,Magic_number,0,Red).If(MA11MA22) { チケットを送信します。

return (0);

}

if(total<1)

{

if(MA11>MA21 && MA12<MA22)

{

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,5,Ask-stoploss*Point,0,0,Magic_number,0,Green).のようになります。

}

if(MA11MA22)

{

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,5,Bid+stoploss*Point,0,Magic_number,0,Red).となります。

}
 

MAがクロスした時のStopLoss

あるEAでSL=50を設定しています。

SL=50 or 2本のMAがクロスする場合、どのようなコードになりますか?

助けてくれてありがとうございます。