Исходный код · ID 2547
ignite v1.0.0 fix.mq5
Похожие материалы по тегам
ea robofibo source v.11.2.mq4MetaTrader 4 · 1 общих теговᴇɴᴛʀʏ.txtTradingView · 1 общих теговzonestrategy.mqhMetaTrader 5 · 1 общих теговxauusd_simple_strategy7.mq4MetaTrader 4 · 1 общих теговxauusd_grok_presisi_scalper_v1.4 - anti detach.mq5MetaTrader 5 · 1 общих теговxauusd_gold_perfect.mq4MetaTrader 4 · 1 общих тегов
Вы автор или правообладатель?
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «ignite v1.0.0 fix.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
Поиск по коду файла
/*+--------------------------MTLicense Block1------------------------+*/
/* product code */
string MTlic_ProductCode = "MONEYIST";
/* Title on the information display */
string MTlic_info_caption = "IGNITE v 1.0";
/* footer note on the information display */
string MTlic_info_footer = "Moneyist";
/* Heartbeat delay (900=15min, 3600=1hour, 21600=6hours, 86400=1day) */
int MTlic_heartbeat_delay = 7200;
/* Information display */
int MTLic_DrawLabel_Ygap = 0;
int MTLic_DrawLabel_Xgap = 0;
int MTLic_DrawLabel_corner_anchor_right = 0;
#include <Trade\Trade.mqh>
#define MT_WMCMD_EXPERTS 32851
#define WM_COMMAND 0x0111
#define GA_ROOT 2
#property strict
#include <Trade\PositionInfo.mqh>
#include <Trade\Trade.mqh>
CPositionInfo m_position; // trade position object
CTrade m_trade;
enum Order
{
Fibo2,
Fibo3,
Fibo4,
Fibo5,
Fibo6,
Fibo7,
Fibo8,
Fibo9,
Fibo10
};
input string StopTradingTimeonFriday="14:00";
input string Start_trading="02:00";
input string End_trading="23:00";
input double Lots = 0.01; // Volume size
input double Multiplier = 1.8;
input double Initial_TakeProfit = 7;
double StopLoss = 0.0;
input double Min_pip = 1;
input double Max_pip = 35;
input double Over_Bought = 70;
input double Over_Sold = 30;
input Order Limit_Zero_Profit = Fibo9;
input double Fibo_first_tp = 0.38;
input double Fibo_1 = 1.0;
input double Fibo_2 = 1.5;
input double Fibo_3 = 2.0;
input double Fibo_4 = 2.5;
input double Fibo_5 = 3.0;
input double Fibo_6 = 4.0;
input double Fibo_7 = 5.0;
input double Fibo_8 = 6.0;
input double Fibo_9 = 7.0;
input double Fibo_10 = 8.0;
input double Fibo_11 = 9.0;
input ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT;
input bool Push_Notification = false;
input bool Alert_Message = false;
input int MagicNumber = 1551;
double Bid, Ask;
datetime openingTime;
long openingTimeSeconds;
string strs,level[],level_fibo[15];
int Data, count_level;
ulong lastTicket;
int Numerade;
int NumeradeProfit;
int Slipage = 1;
int LastDeal;
bool Agree;
CTrade trade;
void OnInit()
{
// код доступен только после оплаты
}
void OnDeinit(const int reason)
{
/*+--------------------------MTLicense Block4------------------------+*/
ObjectsDeleteAll(0,"MTlic_");
Comment("");
/*+--------------------------MTLicense Block4------------------------+*/
Comment(" ");
}
string TimeToPreviousFiveMinutesString(datetime time)
{
MqlDateTime mqlTime;
TimeToStruct(time, mqlTime);
int minutes = (mqlTime.min / 5) * 5;
mqlTime.min = minutes;
datetime roundedTime = StructToTime(mqlTime);
return TimeToString(roundedTime, TIME_DATE|TIME_MINUTES);
}
double target,balance;
static datetime reorder;
int counter = 0;
double point;
void OnTick()
{
// код доступен только после оплаты
}
double TakeBuy, TakeSell;
datetime timex;
void order(int type, int from)
{
double LOT;
if(OpenPos() == 0)
{
LOT = Lots;
}
else
{
LOT = Lot[OpenPos()];
}
TakeBuy = NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_ASK) + Initial_TakeProfit*pips(),_Digits);
TakeSell = NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_BID) - Initial_TakeProfit*pips(),_Digits);
MqlTradeRequest requestBuy= {};
requestBuy.action=TRADE_ACTION_DEAL;
requestBuy.magic=MagicNumber; // ORDER_MAGIC
requestBuy.symbol=_Symbol;
requestBuy.volume=LOT;
requestBuy.price = SymbolInfoDouble(_Symbol,SYMBOL_ASK);
requestBuy.sl=0; // Stop Loss
requestBuy.tp=TakeBuy;
requestBuy.type=ORDER_TYPE_BUY;
MqlTradeResult resultBuy= {};
MqlTradeRequest requestSell= {};
requestSell.action=TRADE_ACTION_DEAL;
requestSell.magic=MagicNumber; // ORDER_MAGIC
requestSell.symbol=_Symbol;
requestSell.volume=LOT;
requestSell.price = SymbolInfoDouble(_Symbol,SYMBOL_BID); ;
requestSell.sl=0; // Stop Loss
requestSell.tp=TakeSell; // Take Profit
requestSell.type=ORDER_TYPE_SELL;
MqlTradeResult resultSell= {};
if(timex != iTime(_Symbol, 0, 0))
{
if(type==1)
{
if(!OrderSend(requestSell,resultSell))
PrintFormat("OrderSend error %d",GetLastError());
else
{
timex = iTime(_Symbol, 0, 0);
if(cektime2 != iTime(_Symbol, 0, 0))
{
cektime2 = iTime(_Symbol, 0, 0);
tim = iTime(_Symbol, PERIOD_M1, 0);
}
if(from==0)
fib = true;
}
}
if(type==0)
{
if(!OrderSend(requestBuy,resultBuy))
PrintFormat("OrderSend error %d",GetLastError());
else
{
timex = iTime(_Symbol, 0,0);
if(cektime1 != iTime(_Symbol, 0, 0))
{
cektime1 = iTime(_Symbol, 0, 0);
tim = iTime(_Symbol, PERIOD_M1, 0);
}
if(from==0)
fib = true;
}
}
}
}
void order_limit(int type)
{
double tp;
if(type == 0)
tp = NormalizeDouble(Level[0] - point, _Digits);
else
tp = NormalizeDouble(Level[0] + point, _Digits);
int lou = 1;
while(lou < 11)
{
if(type == 0)
{
tp = NormalizeDouble(Level[lou]-point,_Digits);
if(!trade.OrderOpen(_Symbol,ORDER_TYPE_BUY_LIMIT,Lot[lou], Level[lou+1],Level[lou+1], 0, tp,0,0))
{
Sleep(100);
trade.OrderOpen(_Symbol,ORDER_TYPE_BUY_LIMIT,Lot[lou], Level[lou+1],Level[lou+1], 0, tp,0,0);
}
}
else
{
tp = NormalizeDouble(Level[lou]+point,_Digits);
if(!trade.OrderOpen(_Symbol,ORDER_TYPE_SELL_LIMIT,Lot[lou],Level[lou+1],Level[lou+1], 0, tp,0,0))
{
Sleep(100);
trade.OrderOpen(_Symbol,ORDER_TYPE_SELL_LIMIT,Lot[lou],Level[lou+1],Level[lou+1], 0, tp,0,0);
}
}
lou++;
}
Sleep(200);
modif(tp);
}
void close_position()
{
for(int i=PositionsTotal()-1;i>=0;i--) // returns the number of current positions
if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
if(m_position.Symbol()==_Symbol && m_position.Magic()==MagicNumber)
m_trade.PositionClose(m_position.Ticket()); // close a position by the specified symbol
}
void close_pos()
{
for(int i = PositionsTotal() - 1; i >= 0; i--)
{
ResetLastError();
PositionSelectByTicket(PositionGetTicket(i));
if(PositionGetInteger(POSITION_MAGIC) == MagicNumber && PositionGetString(POSITION_SYMBOL) == _Symbol)
{
if(trade.PositionClose(PositionGetTicket(i)))
{
flag = -1;
}
else
close_position();
Print("Error", GetLastError());
}
}
closepend();
}
void closepend()
{
MqlTradeRequest req = {};
MqlTradeResult res = {};
int orders = OrdersTotal();
req.action = TRADE_ACTION_REMOVE;
for(int i = orders - 1; i >= 0 ;i--)
{
req.order = OrderGetTicket(i);
if(OrderGetString(ORDER_SYMBOL) == _Symbol)
{
ResetLastError();
if(!OrderSend(req,res))
{
Print("Fail to delete ticket ",req.order,": Error ",GetLastError(),", retcode = ",res.retcode);
}
else
{
flag = -1;
}
}
}
}
void history()
{
int deals=HistoryOrdersTotal();
if(deals>0)
{
ulong last_deal_ticket=HistoryOrderGetTicket(deals-1);
if(last_deal_ticket>0)
{
ENUM_ORDER_TYPE deal_type=(ENUM_ORDER_TYPE)HistoryOrderGetInteger(last_deal_ticket, ORDER_TYPE);
if(deal_type==ORDER_TYPE_BUY)
{
LastDeal = 1;
}
else
if(deal_type==ORDER_TYPE_SELL)
{
LastDeal = 0;
}
}
}
}
datetime tim;
input int PERIOD = 14;
int flag;
void signal_RSI()
{
double indi [];
int indicator_handle2 = iRSI(_Symbol, TimeFrame, PERIOD, PRICE_CLOSE);
flag = -1;
if(indicator_handle2 == INVALID_HANDLE)
{
Print("Error creating indicator handle");
return;
}
int copied_2 = CopyBuffer(indicator_handle2, 0, 0, 2, indi);
if(indi[1] >= Over_Bought)
{
flag = 1;
info3 = DoubleToString(indi[1],1);
}
if(indi[1] <= Over_Sold)
{
flag = 0;
info3 = DoubleToString(indi[1],1);
}
}
double RSI()
{
double indi [];
int indicator_handle2 = iRSI(_Symbol, TimeFrame, PERIOD, PRICE_CLOSE);
if(indicator_handle2 == INVALID_HANDLE)
{
Print("Error creating indicator handle");
}
else
{
int copied_2 = CopyBuffer(indicator_handle2, 0, 0, 2, indi);
}
return(indi[1]);
}
void check_RSI(int type)
{
double indi [];
int indicator_handle2 = iRSI(_Symbol, TimeFrame, 14, PRICE_CLOSE);
if(indicator_handle2 == INVALID_HANDLE)
{
Print("Error creating indicator handle");
return;
}
int copied_2 = CopyBuffer(indicator_handle2, 0, 0, 2, indi);
if(indi[1] > Over_Bought && flag == 0 && AccountInfoDouble(ACCOUNT_PROFIT) >0)
{
flag = -1;
close_pos();
}
if(indi[1] < OverПоказано первые 50% кода (символов: 16190)
Что вы получите после оплаты
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? Адрес передаётся вместе с заказом в магазин и сохраняется для связи заказа с оплатой. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.
Стоимость полного кода
1 619₽
≈ $19.03