Diese Funktion gibt den Typ der letzten geschlossenen Position oder -1 zurück. Eine genauere Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter definiert:
sy - Bezeichnung des Marktinstruments. Wenn Sie diesen Parameter angeben, berücksichtigt die Funktion nur Positionen des angegebenen Instruments. Der Standardwert "" bedeutet ein beliebiges Marktinstrument. NULL bedeutet das aktuelle Instrument.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает тип последней закрытой позиции или -1 |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+int GetTypeLastClosePos(string sy="", int mn=-1) {
datetime t;
int i, k=OrdersHistoryTotal(), r=-1;
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if ((OrderSymbol()==sy || sy=="") && (mn<0 || OrderMagicNumber()==mn)) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
r=OrderType();
}
}
}
}
}
return(r);
}
Diese Funktion gibt den Typ der letzten offenen Position oder -1 zurück. Eine genauere Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
sy - Bezeichnung des Marktinstruments. Wenn Sie diesen Parameter angeben, berücksichtigt die Funktion nur Positionen des angegebenen Instruments. Der Standardwert "" bedeutet ein beliebiges Marktinstrument. NULL bedeutet das aktuelle Instrument.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает тип последней открытой позиции или -1 |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+int GetTypeLastOpenPos(string sy="", int mn=-1) {
datetime t;
int i, k=OrdersTotal(), r=-1;
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if ((OrderSymbol()==sy || sy=="") && (mn<0 || OrderMagicNumber()==mn)) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (t<OrderOpenTime()) {
t=OrderOpenTime();
r=OrderType();
}
}
}
}
}
return(r);
}
Diese Funktion gibt ein Flag zurück, mit dem die letzte Position durch Stopp geschlossen wird. Flagge ist oben - Wahr - StopLoss hat ausgelöst. Flagge gesenkt - Falsch - die Position wurde aus einem anderen Grund geschlossen. Eine genauere Auswahl der zu berücksichtigenden Positionen wird über externe Parameter eingestellt:
sy - Bezeichnung des Marktinstruments. Wenn Sie diesen Parameter angeben, berücksichtigt die Funktion nur Positionen des angegebenen Instruments. Der Standardwert "" bedeutet ein beliebiges Marktinstrument. NULL bedeutet das aktuelle Instrument.
op - Handelsoperation, Positionsart. Gültige Werte: OP_BUY, OP_SELL oder -1. Der Standardwert -1 bedeutet eine beliebige Position.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.05.2008 |//| Описание : Возвращает флаг закрытия последней позиции по стопу. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
datetime t;
double ocp, osl;
int dg, i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
}
}
}
}
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
dg=MarketInfo(sy, MODE_DIGITS);
if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
ocp=NormalizeDouble(OrderClosePrice(), dg);
osl=NormalizeDouble(OrderStopLoss(), dg);
if (ocp==osl) return(True);
}
return(False);
}
Diese Funktion gibt ein Flag zurück, um die letzte Position bei Take Profit zu schließen. Flagge ist oben - Wahr - TakeProfit wurde ausgelöst. Flagge gesenkt - Falsch - Position wurde aus einem anderen Grund geschlossen. Eine genauere Auswahl der zu berücksichtigenden Positionen erfolgt anhand externer Parameter:
sy - Bezeichnung des Marktinstruments. Wenn Sie diesen Parameter setzen, berücksichtigt die Funktion nur Positionen des angegebenen Instruments. Der Standardwert "" bedeutet ein beliebiges Marktinstrument. NULL bedeutet das aktuelle Instrument.
op - Handelsoperation, Positionsart. Gültige Werte: OP_BUY, OP_SELL oder -1. Der Standardwert -1 bedeutet eine beliebige Position.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.05.2008 |//| Описание : Возвращает флаг закрытия последней позиции по тейку. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+bool isCloseLastPosByTake(string sy="", int op=-1, int mn=-1) {
datetime t;
double ocp, otp;
int dg, i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
}
}
}
}
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
dg=MarketInfo(sy, MODE_DIGITS);
if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
ocp=NormalizeDouble(OrderClosePrice(), dg);
otp=NormalizeDouble(OrderTakeProfit(), dg);
if (ocp==otp) return(True);
}
return(False);
}
Diese Funktion gibt das Verlustkennzeichen der letzten geschlossenen Position zurück. Flagge oben - Wahr - letzte Position wurde mit Verlust geschlossen. Flags down - False - die letzte Position wurde entweder mit Null oder mit Gewinn geschlossen. Bei dieser Funktion werden Swaps und Provisionen nicht berücksichtigt. Die Auswahl der Positionen wird durch externe Parameter bestimmt:
sy - Bezeichnung des Marktinstruments. Wenn Sie diesen Parameter angeben, berücksichtigt die Funktion nur Positionen des angegebenen Instruments. Der Standardwert "" bedeutet ein beliebiges Marktinstrument. NULL bedeutet das aktuelle Instrument.
op - Handelsoperation, Positionsart. Gültige Werte: OP_BUY, OP_SELL oder -1. Der Standardwert -1 bedeutet eine beliebige Position.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает флаг убыточности последней позиции. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+bool isLossLastPos(string sy="", int op=-1, int mn=-1) {
datetime t;
int i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
}
}
}
}
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderProfit()<0) return(True);
}
return(False);
}
Diese Funktion gibt das Handelskennzeichen für den heutigen Tag zurück. Die Flagge ist oben - Stimmt - es gab heute offene Positionen. Flagge unten - Falsch - heute keine Positionen eröffnet. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
sy - Bezeichnung des Marktinstruments. Wenn dieser Parameter gesetzt ist, berücksichtigt die Funktion nur Positionen des angegebenen Instruments. Der Standardwert "" bedeutet ein beliebiges Marktinstrument. NULL bedeutet das aktuelle Instrument.
op - Handelsoperation, Positionsart. Gültige Werte: OP_BUY, OP_SELL oder -1. Der Standardwert -1 bedeutet eine beliebige Position.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает флаг торгов сегодня. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+bool isTradeToDay(string sy="", int op=-1, int mn=-1) {
int i, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (TimeDay (OrderOpenTime())==Day()
&& TimeMonth(OrderOpenTime())==Month()
&& TimeYear (OrderOpenTime())==Year()) return(True);
}
}
}
}
}
}
k=OrdersTotal();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (TimeDay (OrderOpenTime())==Day()
&& TimeMonth(OrderOpenTime())==Month()
&& TimeYear (OrderOpenTime())==Year()) return(True);
}
}
}
}
}
}
return(False);
}
Diese Funktion gibt die Taktschlussnummer der letzten Position oder -1 zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
sy - Bezeichnung des Marktinstruments. Wenn dieser Parameter gesetzt ist, berücksichtigt die Funktion nur Positionen dieses Instruments. Der Standardwert - NULL - bedeutet das aktuelle Marktinstrument.
tf - Zeitrahmen. Der Standardwert 0 bedeutet den aktuellen Zeitrahmen.
op - Handelsoperation, Positionsart. Gültige Werte: OP_BUY, OP_SELL oder -1. Der Standardwert -1 bedeutet eine beliebige Position.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает номер бара закрытия последней позиции или -1. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" или NULL - текущий символ) |//| tf - таймфрейм ( 0 - текущий таймфрейм) |//| op - операция ( -1 - любая позиция) |//| mn - MagicNumber ( -1 - любой магик) |//+----------------------------------------------------------------------------+int NumberOfBarCloseLastPos(string sy="0", int tf=0, int op=-1, int mn=-1) {
datetime t;
int i, k=OrdersHistoryTotal();
if (sy=="" || sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) t=OrderCloseTime();
}
}
}
}
}
}
return(iBarShift(sy, tf, t, True));
}
Diese Funktion gibt die Taktnummer der zuletzt geöffneten Position oder -1 zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
sy - Bezeichnung des Marktinstruments. Wenn dieser Parameter gesetzt ist, berücksichtigt die Funktion nur Positionen des angegebenen Instruments. Der Standardwert - NULL - bedeutet das aktuelle Marktinstrument.
tf - Zeitrahmen. Der Standardwert 0 bedeutet den aktuellen Zeitrahmen.
op - Handelsoperation, Positionsart. Gültige Werte: OP_BUY, OP_SELL oder -1. Der Standardwert -1 bedeutet eine beliebige Position.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает номер бара открытия последней позиции или -1. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" или NULL - текущий символ) |//| tf - таймфрейм ( 0 - текущий таймфрейм) |//| op - операция ( -1 - любая позиция) |//| mn - MagicNumber ( -1 - любой магик) |//+----------------------------------------------------------------------------+int NumberOfBarOpenLastPos(string sy="0", int tf=0, int op=-1, int mn=-1) {
datetime t;
int i, k=OrdersTotal();
if (sy=="" || sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderOpenTime()) t=OrderOpenTime();
}
}
}
}
}
}
return(iBarShift(sy, tf, t, True));
}
Diese Funktion gibt die Anzahl der heute geschlossenen Verlustpositionen zurück. Die Auswahl der zu berücksichtigenden Positionen erfolgt über externe Parameter:
sy - Bezeichnung des Marktinstruments. Wenn dieser Parameter gesetzt ist, berücksichtigt die Funktion nur Positionen dieses Instruments. Der Standardwert "" bedeutet ein beliebiges Marktinstrument. NULL-Wert bedeutet das aktuelle Instrument.
op - Handelsoperation, Positionsart. Gültige Werte: OP_BUY, OP_SELL oder -1. Der Standardwert -1 bedeutet eine beliebige Position.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает количество убыточных позиций, закрытых сегодня. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+int NumberOfLossPosToday(string sy="", int op=-1, int mn=-1) {
datetime t;
int i, k=OrdersHistoryTotal(), kp=0;
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
t=OrderCloseTime();
if (Year()==TimeYear(t) && DayOfYear()==TimeDayOfYear(t)) {
if (OrderProfit()<0) kp++;
}
}
}
}
}
}
}
return(kp);
}
Diese Funktion gibt den Schlusskurs der letzten geschlossenen Position zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
sy - Bezeichnung des Marktinstruments. Wenn dieser Parameter gesetzt ist, berücksichtigt die Funktion nur Positionen dieses Instruments. Der Standardwert "" bedeutet ein beliebiges Marktinstrument. NULL-Wert bedeutet das aktuelle Instrument.
op - Handelsoperation, Positionsart. Gültige Werte: OP_BUY, OP_SELL oder -1. Der Standardwert -1 bedeutet eine beliebige Position.
mn - Positionsbezeichner, MagicNumber. Der Standardwert -1 bedeutet einen beliebigen Bezeichner.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает цену закрытия последней закрытой позиций. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+double PriceCloseLastPos(string sy="", int op=-1, int mn=-1) {
datetime t;
double r=0;
int i, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
r=OrderClosePrice();
}
}
}
}
}
}
}
return(r);
}
GetTypeLastClosePos() Funktion.
Diese Funktion gibt den Typ der letzten geschlossenen Position oder -1 zurück. Eine genauere Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter definiert:
GetTypeLastOpenPos() Funktion.
Diese Funktion gibt den Typ der letzten offenen Position oder -1 zurück. Eine genauere Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
Die Funktion isCloseLastPosByStop().
Diese Funktion gibt ein Flag zurück, mit dem die letzte Position durch Stopp geschlossen wird. Flagge ist oben - Wahr - StopLoss hat ausgelöst. Flagge gesenkt - Falsch - die Position wurde aus einem anderen Grund geschlossen. Eine genauere Auswahl der zu berücksichtigenden Positionen wird über externe Parameter eingestellt:
Die Funktion isCloseLastPosByTake().
Diese Funktion gibt ein Flag zurück, um die letzte Position bei Take Profit zu schließen. Flagge ist oben - Wahr - TakeProfit wurde ausgelöst. Flagge gesenkt - Falsch - Position wurde aus einem anderen Grund geschlossen. Eine genauere Auswahl der zu berücksichtigenden Positionen erfolgt anhand externer Parameter:
Die Funktion isLossLastPos().
Diese Funktion gibt das Verlustkennzeichen der letzten geschlossenen Position zurück. Flagge oben - Wahr - letzte Position wurde mit Verlust geschlossen. Flags down - False - die letzte Position wurde entweder mit Null oder mit Gewinn geschlossen. Bei dieser Funktion werden Swaps und Provisionen nicht berücksichtigt. Die Auswahl der Positionen wird durch externe Parameter bestimmt:
Die Funktion isTradeToDay().
Diese Funktion gibt das Handelskennzeichen für den heutigen Tag zurück. Die Flagge ist oben - Stimmt - es gab heute offene Positionen. Flagge unten - Falsch - heute keine Positionen eröffnet. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
Die Funktion NumberOfBarCloseLastPos().
Diese Funktion gibt die Taktschlussnummer der letzten Position oder -1 zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
Die Funktion NumberOfBarOpenLastPos().
Diese Funktion gibt die Taktnummer der zuletzt geöffneten Position oder -1 zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
Die Funktion NumberOfLossPosToday().
Diese Funktion gibt die Anzahl der heute geschlossenen Verlustpositionen zurück. Die Auswahl der zu berücksichtigenden Positionen erfolgt über externe Parameter:
Die Funktion PriceCloseLastPos().
Diese Funktion gibt den Schlusskurs der letzten geschlossenen Position zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt: