//---Поиск последнего отработавшего ордера для открытия очередной позиции ---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)
{.... Здесь действия, при положительном профите ордера...
.....
......
......
これを書くとき、条件の前にFlag=0と書かないのは、そうするとトランザクションの前に毎回更新されて常に0になるからです。 値を指定しない場合、例えばint Flagだけなら、プログラムは0を代入しますよね?
私は、Flagがstart関数の中ではなく、外側にあるコードを書きました。中に入れたら意味がない。
変だな、コードが動いてる。置き場所が違うのでは?
私は、Flagがstart関数の内側ではなく、外側にあるようなコードを書きました。中に入れたら意味がない。
すみません、返信を書いたのですが、お返事を拝見していませんでした。
はい、そうです、まさに私のミスです。 しかし、解決策はStaticを使うことでした。
本当にありがとうございました。
おやすみなさい!
という関数があるかどうか教えてください。
int start()
{
OrderSend (Symbol(), OP_SELL, Loot,Bid, 50, SL, TP,NULL,1001,0,L);
if (OrderSelect(1001, SELECT_BY_TICKET)== true)
int Ticket = OrderTicket ();
Alert ("Ticket =",Ticket);
OrderClose(Ticket,Loot,Ask,50,R);
} (注1)注文は、1回に限り有効です。
ordersend関数で マジックパラメータを使って、この番号の注文を検索する方法がよくわからないのですが?
そして、関数を使用すると
マジックを使うには、まず自分のものと同じようにセットアップし、ラウンドするときにその存在を確認する必要があります
皆さん、こんにちは!!!
質問:Expert Advisor(MQL4)から取引履歴に アクセスすることは可能でしょうか?
つまり、前の案件は不採算で、前の案件は採算が取れたというように、歴史の奥深くにある10件の案件がそうであったということでしょうか。
Expert Advisorは大きな損失取引の後に利益取引が連続するため、MMには必要なものです。
思いついたのですが、負けトレードの後、例えば3回、5回と連続してポジションを増やし始め、次の
で、次の負けトレードを待ちます。
みんなに手を出すな、まだ寝ているんだ、何しろ土曜日だ。
アクセスは、コードベースで「マーチンゲール」(martingale)というコントロールワードを持つEAを探して、整理することができます。
皆さん、こんにちは!!!
質問:Expert Advisor(MQL4)から取引履歴にアクセスすることは可能でしょうか?
つまり、前の案件は不採算で、前の案件は採算が取れたというように、歴史の奥深くにある10件の案件がそうであったということでしょうか。
Expert Advisorは大きな損失取引の後に利益取引が連続するため、MMには必要なものです。
思いついたのは、負けトレードの後、例えば3回、5回と連続してポジションを増やし始め、次の
負けトレード
もちろん、可能です。ここを見て ください。自分で根拠を持ち、自分の取引条件に合わせることができます。
最後に決済された注文の結果に従ってポジションを整理する例です(注文履歴の中で最も新しいもの、私のシステムでもこのように整理されています)。
double iMA( string symbol,int timeframe,int period,int ma_shift,int ma_method,int applied_price,int shift)
移動平均の計算を行います。ma_shift は見ての 通り、整数(МАшки 行が右または左にシフトする小節数)です。また、±0.21%は2倍 なので、うまくいきません。
あなたの望みを理解していますか?
あなたはすべてを正しく理解しています。まさにRumus(フォレックス・クラブ)にはそんな可能性があり、この「エンベロープ」がTS「日中保守的スキャルピング」のベースになっているのです。MT4で同じことをしたかった。しかし、あなたが説明したように、そうではありません :)
Rimlyanin:
あなたはすべてを正しく理解しています。ただ、Rumus(フォレックス・クラブ)にはそんなチャンスがあり、この「封筒」がTS「保守的な日中スキャルピング」のベースになっているのです。MT4で同じことをしたかった。しかし、あなたが説明したように、それは運命ではありません :)
あなたは誤解している。
封筒が必要な場合は、MAを上下にずらします。
MAは左へ、右へ(Alligatorのように)シフト するものです。