Orders Execution
Miscellaneous
0
Views
0
Downloads
0
Favorites
Profitability Reports
AUD/USD
Oct 2024 - Jan 2025
0.00 %
Total Trades
0
Won Trades
0
Lost trades
0
Win Rate
0.0 %
Expected payoff
0.00
Gross Profit
0.00
Gross Loss
0.00
Total Net Profit
0.00
-100%
-50%
0%
50%
100%
GBP/USD
Oct 2024 - Jan 2025
0.00 %
Total Trades
0
Won Trades
0
Lost trades
0
Win Rate
0.0 %
Expected payoff
0.00
Gross Profit
0.00
Gross Loss
0.00
Total Net Profit
0.00
-100%
-50%
0%
50%
100%
NZD/USD
Oct 2024 - Jan 2025
0.00 %
Total Trades
0
Won Trades
0
Lost trades
0
Win Rate
0.0 %
Expected payoff
0.00
Gross Profit
0.00
Gross Loss
0.00
Total Net Profit
0.00
-100%
-50%
0%
50%
100%
e-Univers
//+------------------------------------------------------------------+
//| e-Univers.mq4 |
//| http://piccstick.blogspot.com |
//| piccioli@gmail.com |
//| |
//| Ñîâåòíèê ïðåäíîçíà÷åí äëÿ îñóùåñòâëåíèÿ òîðãîâëè ïî ñèãíàëàì |
//| èç ôàéëà. Òîðãîâëÿ îñóùåñòâëÿåòñÿ êàê îòëîæåííìè îðäåðàìè, |
//| òàê è ðûíî÷íèìè. |
//| Óíèâåðñàëüíîñòü äàííîãî ñîâåòíèêà çàêëþ÷åòñÿ â òîì, ÷òî âû |
//| ìîæåòå èñïîëüçâàòü ñèãíàëû, êîòîðûå ãåíåðÿòñÿ äðóãèìè |
//| ñîâåòíèêàìè, äðóãèìè ïðîãðàìììàìè, ðàñ÷èòàííìè âðó÷íóþ èëè |
//| ëþáîì äðóãèì ñïîñîáîì. |
//| Òàê æå óíèâåðñàëüíûì îí ÿâëÿåòñÿ ïîòîìó, ÷òî öåïëÿåòñÿ òîëüêî |
//| íà îäèí ãðàôèê, ïðè ýòîì áóäåò òîðãîâàòü ëþáîé èíñòðóìåíò. |
//| |
//| Âñå ñèãíàëû çàíîñÿòñÿ â ôàéë signal.csv, |
//| êîòîðûé èìååò ñëåäóþùóþ ñòðóêòóðó |
//| |
//| 10001;2009.02.17 12:56;60;AUDUSD;3;0.1;0.6442;0.6287;0.6482;1 |
//| 10002;2009.02.17 12:56;60;EURUSD;3;0.1;1.2693;1.2473;1.2733;1 |
//| 10003;2009.02.18 06:39;60;GBPUSD;3;0.1;1.4280;1.3855;1.4355;1 |
//| 10004;2009.02.18 06:54;60;USDJPY;3;0.1;92.470;90.870;93.170;1 |
//| 10005;2009.02.18 06:54;60;AUDUSD;3;0.1;0.6452;0.6307;0.6492;1 |
//| |
//| ãäå: |
//| |
//| 10001 - óíèêàëüíûé íîâåð, èñïîëüçóåòñÿ â êà÷åñòâå ìàäæèê íîìåðà, |
//| äëÿ ïðåäîñòâðàùåíèÿ ïîñòîðíîãî ñðàáàòûâàíèÿ |
//| |
//| 2009.02.17 12:56;60 - äàòà è âðåìÿ ôîðìèðîâàíèÿ ñèãíàëà. |
//| Â äàííîì ñîâåòíèêå èñïîëüçóåòñÿ ëîêàëüíîå âðåìÿ âàøåãî |
//| êîìïüþòåðà, ÷òî áû áûëî ïîíÿòíåå, îñîáåííî, åñëè âû |
//| âûñòàâëÿåòå îðäåðà âðó÷íóþ. |
//| |
//| 60 - âðåìÿ â ìèíóòà. Îïðåäåëÿåò ñðîê èñòå÷åíèÿ |
//| îòëîæåííîãî îðäåðà. |
//| |
//| AUDUSD - òîðãóåìûé èíñòðóìåíò. Ñîâåòíèê âûñòàâëÿåòñÿ òîëüêî |
//| íà îäèí ãðàôèê, ïðè ýòîì ìîæåò òîðãîâàòü, êàê áûëî ñêàçàíî |
//| âûøå, ëþáîé èíñòðóìåíò. |
//| |
//| 3 - òèï îðäåðà (íàäåþñü, âû çíàåòå îáîçíà÷åíèÿ îðäåðîâ) |
//| |
//| 0.1 - ðàçìåð ïîçèöèè |
//| |
//| 0.6442;0.6287;0.6482 - öåíû ñîîòâåòñâåííî: |
//| Îòêðûòèå - Öåëü - Ñòîï |
//| |
//| 1 - ôëàã ñèãíàëà (1 - àêòèâíûé, äîëåí áóäåò |
//| âûñòàâèòüñÿ; 0 - óäàëèòü, óäàëÿþòñÿ íåñðàáîòàâøèå îòëîæåííûå |
//| îðäåðà; ëþáàÿ äðóãàÿ öèôðà - èãíîð) |
//| |
//| Åñëè âû ïûòàåòåñü âûñòàâèòü îòëîæåííûé îðäåð ñëèøêîì áëèçêî |
//| ê ðûíêó (â ïðåäåëàõ ñòîïëåâåëà), òî òàêîé îðäåð áóäåò îòêðûò |
//| êàê ðûíî÷íûé. |
//| |
//| Ïî âñåì âîïðîñàì îáðàùàòüñÿ â ëè÷êó íà ýòîì ôîðóìå |
//| èëè íà ïî÷òó. |
//| Ðàññìîòðþ ïðåäëîæåíèÿ ïî ïåðåäåëêå, äîäåëêå, èñïðàâëåíèè |
//| äàííîãî ñîâåòíèêà, à òàê æå íàïèøó ñîâåòíèêà íà çàêàç. |
//| |
//+------------------------------------------------------------------+
#property copyright "piccioli@gmail.com"
#property link "http://piccstick.blogspot.com"
string Sgnl[][10];
#include <stdlib.mqh>
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
TradeFromFile();
//----
return(0);
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| ×òåíèå è îáðàáîòêà ñèãíàëîâ èç ôàéëà |
//+------------------------------------------------------------------+
void TradeFromFile()
{
int k;
int cnt = 0;
int handle;
string str;
handle = FileOpen("signal.csv", FILE_READ);
ArrayResize(Sgnl, 0);
if (handle>0)
{
while (true)
{
ArrayResize(Sgnl, cnt + 1);
k = 0;
while (true)
{
Sgnl[cnt][k] = FileReadString(handle);
k++;
if (FileIsLineEnding(handle))
break;
}
if (k<10)
{
ArrayResize(Sgnl, cnt);
}
else
cnt++;
if (FileIsEnding(handle))
{
FileClose(handle);
break;
}
}
}
for( int j = 0; j<ArraySize(Sgnl) / 10; j++ )
{
if (Sgnl[j][9] == "1")
{
SetOrders(StrToInteger(Sgnl[j][0]), Sgnl[j][3],StrToInteger(Sgnl[j][4]),StrToDouble(Sgnl[j][6]), StrToDouble(Sgnl[j][7]), StrToDouble(Sgnl[j][8]), StrToDouble(Sgnl[j][5]), StrToTime(Sgnl[j][1]), StrToTime(Sgnl[j][1])+ StrToInteger(Sgnl[j][2])*60);
}
if (Sgnl[j][9] == "0")
{
CloseOrder(StrToInteger(Sgnl[j][0]));
}
}
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Îòêðûòèå ïîçèöèè |
//| Ôóíêöèÿ âçÿòà ó (c)KimIV çà ÷òî åìó îòäåëüíîå ñïàñèáî |
//+------------------------------------------------------------------+
void ExtOrderSend(int op, double ldLot, double ldOpen, double ldStop, double ldTake, int mn, string OrdSymbol, datetime OrdCancel )
{
color clOpen;
int ticket;
string cmmnt = mn;
if (op==0 || op==2 || op==4)
clOpen=Green;
else clOpen=Red;
// while (!IsTradeAllowed())
// Sleep(3000);
ticket = OrderSend(OrdSymbol,op,ldLot,ldOpen,3,ldStop,ldTake,cmmnt,mn,OrdCancel,clOpen);
if (ticket<0) {
int err=GetLastError();
Print("Error(",err,") ",ErrorDescription(err)," MAGIC ", mn," ",OrderTicket());
}
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Âûñòàâëåíèå îòëîæåííûõ îðäåðîâ è îòêðûòèå ïîçèöèé (Ôëàã = 1) |
//+------------------------------------------------------------------+
void SetOrders(int OrdMn, string OrdSymbol,int OrdType, double OpenPrice, double TakeProfit, double StopLoss, double LotSize, datetime OrdStart, datetime OrdStop)
{
if (!ExistPosition(OrdMn))
{
if (OrdType == 3 && OrdStart < TimeLocal() && OrdStop > TimeLocal())
{
if (MarketInfo(OrdSymbol,MODE_BID) + MarketInfo(OrdSymbol,MODE_STOPLEVEL)*Point > OpenPrice) OrdType = 1;
}
if (OrdType == 2 && OrdStart < TimeLocal() && OrdStop > TimeLocal())
{
if (MarketInfo(OrdSymbol,MODE_ASK) - MarketInfo(OrdSymbol,MODE_STOPLEVEL)*Point < OpenPrice) OrdType = 0;
}
if (OrdType == 5 && OrdStart < TimeLocal() && OrdStop > TimeLocal())
{
if (MarketInfo(OrdSymbol,MODE_BID) - MarketInfo(OrdSymbol,MODE_STOPLEVEL)*Point < OpenPrice) OrdType = 1;
}
if (OrdType == 4 && OrdStart < TimeLocal() && OrdStop > TimeLocal())
{
if (MarketInfo(OrdSymbol,MODE_ASK) + MarketInfo(OrdSymbol,MODE_STOPLEVEL)*Point > OpenPrice) OrdType = 0;
}
if (OrdType == 0)
{
OpenPrice = NormalizeDouble(MarketInfo(OrdSymbol,MODE_ASK), MarketInfo(OrdSymbol,MODE_DIGITS));
ExtOrderSend(OrdType, LotSize, OpenPrice, StopLoss, TakeProfit, OrdMn, OrdSymbol, OrdStop );
}
if (OrdType == 1)
{
OpenPrice = NormalizeDouble(MarketInfo(OrdSymbol,MODE_BID), MarketInfo(OrdSymbol,MODE_DIGITS));
ExtOrderSend(OrdType, LotSize, OpenPrice, StopLoss, TakeProfit, OrdMn, OrdSymbol, OrdStop );
}
if (OrdType == 2 || OrdType == 3 || OrdType == 4 || OrdType == 5)
{
if (OrdStart < TimeLocal() && OrdStop > TimeLocal())
{
ExtOrderSend(OrdType, LotSize, OpenPrice, StopLoss, TakeProfit, OrdMn, OrdSymbol, OrdStop );
}
}
}
return (0);
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Âîçâðàùàåò ôëàã ñóùåñòâîâàíèÿ ïîçèöèè ïî MAGIC íîìåðó |
//| Ôóíêöèÿ âçÿòà ó (c)KimIV çà ÷òî åìó îòäåëüíîå ñïàñèáî |
//+------------------------------------------------------------------+
bool ExistPosition(int MAGIC) {
bool Exist=False;
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderMagicNumber()==MAGIC) {
Exist=True; break;
}
}
}
return(Exist);
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Óäàëåíèå íåñðàáîòàâøèõ îòëîæåííûõ îðäåðîâ (Ôëàã = 0) |
//+------------------------------------------------------------------+
void CloseOrder(int MAGIC)
{
int ticket;
for( int i = 0; i<OrdersTotal(); i++ )
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if (OrderMagicNumber()==MAGIC)
{
if (OrderType() == 2 || OrderType() == 3 || OrderType() == 4 || OrderType() == 5)
{
ticket =OrderDelete(OrderTicket());
if (ticket<0) {
int err=GetLastError();
Print("Error(",err,") ",ErrorDescription(err)," MAGIC ", MAGIC," ",OrderTicket());
}
}
}
}
}
return (0);
}
//+------------------------------------------------------------------+
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---