int MAGIC =322223;string Sym[]={"EURUSD","GBPUSD","USDCHF","USDJPY"};//Внесем в массив валютные пары с которыми будем работатьint start(){int s = SymbolSelect();//Функция выбора валютной парыif( SelectOrder( Sym[ s],OP_BUY, MAGIC)<0){//Если нет установленного ордера по выбранному символу
UpTrend( Sym[ s]);//Проверим условие установки ордера }if( SelectOrder( Sym[ s],OP_SELL, MAGIC)<0){//Если нет установленного ордера по выбранному символу
DownTrend( Sym[ s]);//Проверим условие установки ордера }}int SymbolSelect(){int s=-1;//Условие выбора валютной пары для работы return( s)}//+-------------------Выбор ордера---------------------------+int SelectOrder(string Sym,int Tip,int MAGIC){int TotOrd=OrdersTotal();int OrdTick=-1;for(int OrdPos= TotOrd-1; OrdPos>=0; OrdPos--){if(OrderSelect( OrdPos, SELECT_BY_POS, MODE_TRADES)==true){if(OrderSymbol()== Sym){//Есть ли ордера с нужным символомif(OrderType()== Tip){//Если нужный тип ордера if( MAGIC==0){ MAGIC=OrderMagicNumber();}//Если магик = 0,неучитыватьif(OrderMagicNumber()== MAGIC){//Есть ли ордера с нужным Магик номером
OrdTick =OrderTicket();break;//Запишем в переменную его тикет и прервем цикл }}}}}return( OrdTick);//Возвращает тикет найденного ордера или -1}bool UpTrend(string Sym){//Условие установки BUY ордера}bool DownTrend(string Sym){//Условие установки SELL ордера}
私の関数を少し修正して、与えられた楽器とマジシャンの注文 数の合計を返すようにすることができます。
もし、あなたがそれを使って何をすべきかわからないなら、私はそれが本当のマルチになるかどうかを気にしない...またはちょうど他の人の順序を区別する...。1つのことの本質は - それは1つではなく、いくつかのペアで動作するようにすること)そして、デモでそれをテストすることは問題ではない、ちょうど1〜2ヶ月ですが、結果は興味深いものです)。
マルチフォールドExpert Advisorのロジックを定式化する、より詳細な、おそらくあなたは助けを必要としません。
原則として、タスクの明確な理解が成功の9割を占めます。
ところで、あなたのコードには間違いがある! たくさんだ!
iLow(PERIOD_H4,0,0) - これは何だ?
現在のローソク足の安値))
確かに......!では、テストではどうなのでしょうか?
どうしてこんな風になったのか、自分でもよくわからない。iLow(NULL,PERIOD_H4,0) となるはずです。
多価の専門家の論理を定式化し、より詳細であればあるほどよく、これ以上の助けは必要ないかもしれません。
原則として、タスクの明確な理解が成功の90%を占めます。
論理が悪いわけではありません)ただ、経験がないだけです。どのような属性でも注文を追跡する必要があることは理解していますが、このようなことを書くのは初めてなので、1つだけ質問があるのですが......。関数とその実装について)
論理的には何も問題ないのですが)ただ、経験が浅いので...。どのような属性で注文を追跡する必要があるかは理解していますが、このようなことを書くのは初めてなので、一つの疑問が残るかと思います......。関数とその実装について)
機能については前ページをご覧ください。
前ページの機能を見る
ありがとうございます) コードに入れてみます)
執筆開始...
#define MAGIC 7779の代わりに、この
これを書いて
...失敗しました - 'Order_Count_Calculate' - 関数は結果を返しません。
もし私が正しく理解しているなら、この関数は現在のシンボル Symbol() のすべての注文を MAGIC で見つけるべきです。ありがとうございます) コードに入れてみます)
執筆開始...
これは、まさにあなたが望まないものですextern string _Symbol = Symbol();
変数を定義することができ、inite()やstart()で値を代入した方が良いのですが
論理的には何も問題ないのですが)ただ、経験が浅いので...。どのような属性で注文を追跡する必要があるかは理解していますが、このようなことを書くのは初めてなので、一つの疑問が残るかと思います......。関数とその実装について)
えー...。わかっていないようですが......。
を飛ばしたい」というタスクは、「何が飛んだのか」「どこに飛んだのか」など、論理的ではありません。
--------------------------------------------
タスクの簡単な例です。
EURUSD、GBPUSD、USDCHF、USDJPYの同時使用。
H1期間。
通貨ペア選択条件
BUY条件
売り設定条件
ここでは、簡単な実装例を紹介します。
など
というか、ロジックを細かく考えていけば、実装に困ることはないでしょう。
...それこそ、ロジックを細かく考えていけば、実装に困ることはないでしょう。
今日から考えます...。頭痛の種を発見した気分です))ありがとうございます。
とにかく、間違いのある原稿です...。>>訂正してください)