int time = 0; // время (разместить в глобальных переменных (до старта) - факт работы только с последним закрытым ордером//---Поиск последнего отработавшего ордера для открытия очередной позиции ---for (orderIndex = (OrdersHistoryTotal() - 1); orderIndex >= 0; orderIndex--)
{
if (!OrderSelect(orderIndex, SELECT_BY_POS, MODE_HISTORY))
{
Print("Ошибка при доступе к исторической базе (",GetLastError(),")");
continue;
}
if ((OrderSymbol() != Symbol()) || (OrderMagicNumber() != MagicNumber))
{
continue;
}
//-------------------------Принимаем в расчет только ордер, закрытый недавно-----------------------if(time<OrderCloseTime()) //(сравниваем его с хранящимся в пероеменной time)
{
time=OrderCloseTime(); //если время закрытия ордера больше - ложим его в переменнуюint lastType = OrderType();
double lastLots = OrderLots();
double lastProfit = OrderProfit() + OrderSwap();
// Print ("lastProfit = ", NormalizeDouble(lastProfit, 1));// Анализ только что закрывшегося ордераif (lastProfit >= 0.0)
{
//---Ордер закрылся с прибылью - сюда действия при выполнении этого условия
}
else
{
// Ордер закрылся с убытком - сюда действия при выполнении этого условия (дальше фигурные скобочки сами расставите).
.....
.....
.....
通貨、タイムフレーム、左バーをプログラム上で切り替えることができるのです。
ありがとうございます!仕組みはどこで読めますか?
ありがとうございます!仕組みはどこで読めますか?
これは、アレクセイの冗談です。MT4のヘルプは全て揃っています。
しかし、コードからの利用について回答したのですが、APIがないとできません。
はい、ウィンドウの説明と目的はそこにあります。
しかし、コードからの利用について回答したのですが、APIがないとできないことです。
こんにちは!EAでの注文の出し方ですが、一度注文を出す条件が揃ったら、次回は逆の条件が揃った時のみ注文を出すように処方していただけないでしょうか?
1.最後のトレードの損益をどのように判断するのですか?
2.テスターでは、スプレッドも含めた結果が表示されるのですか?それとも、各取引からスプレッドを差し引く必要があるのですか?
1.私のフクロウでのコード編成の例をお見せしています。
2.スプレッドを考慮した上で、右上のStrategy Tester ウィンドウのSymbolラベルをクリックし、ドロップダウン・ウィンドウの内容を読み取ります。
今日の5時から8時までの最高値と最安値はどうやって調べるのですか?
こんにちは!EAでの注文の出し方について、一度注文を出す条件が揃ったら、次は逆の条件が揃った時のみ注文が出るように処方していただけないでしょうか?