// Учёт ордеров
Symb=Symbol(); // Название фин.инстр.
Total=0; // Количество ордеровfor(int i=1; i<=OrdersTotal(); i++) // Цикл перебора ордер
{
if (OrderSelect(i-1,SELECT_BY_POS)==true) // Если есть следующий
{ // Анализ ордеров:if (OrderSymbol()!=Symb)continue; // Не наш фин. инструмif (OrderType()>1) // Попался отложенный
{
Alert("Обнаружен отложенный ордер. Эксперт не работает.");
return; // Выход из start()
}
Total++; // Счётчик рыночн. ордif (Total>5) // Было не более одного орд, стало не более пяти
{
Alert("Несколько рыночных ордеров. Эксперт не работает.");
return; // Выход из start()
}
Ticket=OrderTicket(); // Номер выбранн. орд.
Tip =OrderType(); // Тип выбранного орд.
Price =OrderOpenPrice(); // Цена выбранн. орд.
SL =OrderStopLoss(); // SL выбранного орд.
TP =OrderTakeProfit(); // TP выбранного орд.
Lot =OrderLots(); // Количество лотов
}
}
// Открытие ордеровwhile(true) // Цикл закрытия орд.
{
if (Total < 5 && Opn_B==true) // Открытых орд. нет +. Было Total < 1, стало Total < 5
{ // критерий откр. BuyRefreshRates(); // Обновление данных
SL=Bid - New_Stop(StopLoss)*Point; // Вычисление SL откр.
TP=Bid + New_Stop(TakeProfit)*Point; // Вычисление TP откр.Alert("Попытка открыть Buy. Ожидание ответа..");
Ticket=OrderSend(Symb,OP_BUY,Lts,Ask,2,SL,TP);//Открытие Buyif (Ticket > 0) // Получилось :)
{
Alert ("Открыт ордер Buy ",Ticket);
return; // Выход из start()
}
if (Fun_Error(GetLastError())==1) // Обработка ошибокcontinue; // Повторная попыткаreturn; // Выход из start()
}
// Закрытие ордеровwhile(true) // Цикл закрытия орд.
{
if (Tip==0 && Cls_B==true) // Открыт ордер Buy..
{ //и есть критерий закрAlert("Попытка закрыть Buy ",Ticket,". Ожидание ответа..");
RefreshRates(); // Обновление данных
Ans=OrderClose(Ticket,Lot,Bid,2); // Закрытие Buyif (Ans==true) // Получилось :)
{
Alert ("Закрыт ордер Buy ",Ticket);
break; // Выход из цикла закр
}
if (Fun_Error(GetLastError())==1) // Обработка ошибокcontinue; // Повторная попыткаreturn; // Выход из start()
}
親愛なる、私はいくつかの助けを必要としています。
チュートリアル(tradingexpert.mq4)から会計、開始、終了の注文のコードを取りました。 このコードは1つのポジションで動作するように意図されています。 5つのポジションが必要です。
以下のようにコードを少し修正しました(変更した行は太字)。これにより、ポジションは適切な量だけ開かれるようになりましたが、反転するときは、1つのポジションだけが閉じられ、反転したものがすぐに開かれるようになりました。
反転時に全てのポジションをクローズし、反対側のポジションのみオープンするようにするにはどうしたらよいでしょうか?
親愛なる、私はいくつかの助けを必要としています。
チュートリアル(tradingexpert.mq4)から会計、開始、終了の注文のコードを取りました。 このコードは1つのポジションで動作するように意図されています。 5つのポジションが必要です。
以下のようにコードを少し修正しました(変更した行は太字)。これにより、ポジションは適切な量だけ開かれるようになりましたが、反転するときは、1つのポジションだけが閉じられ、反転したものがすぐに開かれるようになりました。
反転時にすべてのポジションを決済し、反対側のポジションのみをオープンするようにするにはどうしたらよいでしょうか。
ライブラリの利用度合いで初心者と判断されることはないでしょう。あなたのコードを見た限りでは、それを理解するのに2週間はかかるでしょう。それ以上でなければ。だから、答えは出ないと思うんです。
私はプロゲーマーではなく、コードビルダーです。 そこで、このインジケータを作りました(ファイルTではなく、テキストで説明できるんですね)。
前の動きがClose[i+2]からClose[i+1]に継続する場合、小さな時間枠では、現在の動きClose[i]が追加され、反対であれば - 減算されます - それは週の間にポイントの合計とそれらの合計のダイナミクスを示しています。私はプログラムがバーを閉じるのではなく、金曜日の終値を見るように処方する必要があります。 私はそれがDayOfWeekと5(金曜日の数字)で行うことができることを知っているが、私はどのように現実的にそれを行うことができますか? 助けて ください。
Vitya、ここでは何も整理する必要はありません。この人は、あるサンドボックス(EAとそのライブラリ)のグローバル変数を、別のサンドボックス(コンパイルされたライブラリ)で見えるようにしたいのです。:)))
イゴール、ちょっと勘違い!サンドボックス」(コンパイルされたライブラリ)では、関数とすべての変数のみがインルーラーで宣言されています。また、インクルードファイルで宣言された変数は、梟の中に直接挿入されているため、梟の中でも見えるはずです。反対ですか?
私はプロゲーマーではなく、コードビルダーです。 そこで、このインジケータを作りました(ファイルTではなく、テキストで説明できるんですね)。
それはポイントの合計と週の間にそれらの合計のダイナミクスを示しています - より小さい時間枠で、前の動きがClose[i+2]からClose[i+1]に継続した場合、現在の動きClose[i]が追加され、反対した場合 - が減算されます。私はプログラムがバーを閉じるのではなく、金曜日の終値を見るように処方する必要があります。 私はそれがDayOfWeekと5(金曜日の数字)で行うことができることを知っているが、実際にそれを行うには? 助けて ください。
似合うかな?
イゴール、ちょっと勘違い!関数だけがサンドボックス(コンパイルされたライブラリ)にあり、すべての変数はインルーラーで宣言されます。また、インクルードファイルで宣言された変数は、梟の中に直接挿入されているため、梟の中でも見えるはずです。そう思いませんか?
それでいいのか?
いや、そうではない。説明しよう。あなたのフォーラムは、プログレの最後の有能な砦への希望のようなもので、サイズの挿入 - それはそれが書き込みを見る方法です PERIOD_W1しかし、サイズの使用や日付として固定データムの使用はどちらも望ましい効果を得ることはありません。私は金曜日についての具体的な質問を投稿しました。ところで、あなたのコードは「バージョン」-不明なプロパティと書かれているため、コンパイルさ れません。
TimeDayOfWeek(Time[i])はTime[i]を指定せず、D'2014.01.27'のフォーマットで特定の日付を指定しています。
また、何曜日かを判断する必要がある場合は、 DayOfWeek() を呼び出すだけでよい。
TimeDayOfWeek(Time[i])では、Time[i]ではなく、D'2014.01.27'というフォーマットで特定の日付を設定することになります。
また、何曜日かを判断したい場合は、 DayOfWeek() を呼び出せばよい。