//+------------------------------------------------------------------+ //| BILL_VILJAMS.mq4 | //| Copyright © 2010, "more" | //| "mailto:tradertobe@gmail.com | //+------------------------------------------------------------------+ //ÂÑÅ Î×ÅÍÜ ÏÐÎÑÒÎ: ÎÒÊÐÛÒÈÅ ÏÅÐÂÎÉ ÏÎÇÈÖÈÈ ÏÐÎÈÇÂÎÄÈÒÑß ÍÀ ÍÓËÅÂÎÌ ÁÀÐÅ ÏÐÈ ÏÐÎÁÎÅ ÒÅÊÓÙÅÃÎ ÔÐÀÊÒÀËÀ ÂÛØÅ ÇÓÁΠÀËËÈÃÀÒÎÐÀ. // ÄÎÏÎËÍÈÒÅËÜÍÛÅ ÏÎÇÈÖÈÈ Â ÍÀÏÐÀÂËÅÍÈÅ ÏÅÐÂÎÉ ÏÎÇÈÖÈÈ ÎÒÊÐÛÂÀÞÒÑß ÍÀ ÍÓËÅÂÎÌ ÁÀÐÅ ÏÐÈ ÏÐÎÁÎÅ ÒÅÊÓÙÅÃÎ ÔÐÀÊÒÀËÀ // ÂÛØÅ ÇÓÁΠÀËËÈÃÀÒÎÐÀ, ÍÎ ËÈØÜ ÏÐÈ ÓÑËÎÂÈÈ, ÅÑËÈ ÂÑÅ ÒÐÈ ËÈÍÈÈ ÀËËÈÃÀÒÎÐÀ ÂÛÑÒÐÎÈËÈÑÜ Â ÒÐÅÍÄ ÍÀ ÍÓËÅÂÎÌ ÁÀÐÅ. // ÇÀÊÐÛÒÈÅ ÂÑÅÕ ÏÎÇÈÖÈÉ ÏÐÈÎÈÇÂÎÄÈÒÑß ÏÐÈ ÂÎÇÍÈÊÍÎÂÅÍÈÅ ÍÓËÅÂÎÃÎ ÁÀÐÀ ÏÐÈ ÓÑËÎÂÈÅ, ÊÎÃÄÀ ÇÀÊÐÛÒÈÅ ÏÅÐÂÎÃÎ ÁÀÐÀ // ÏÐÎÈÇÎØËÎ ÇÀ ÏÐÅÄÅËÀÌÈ ÃÓÁ/ÇÓÁÎÂ/×ÅËÞÑÒÈ (ÇÀÄÀÅÒÑß ÂÍÅØÍÈÌ ÏÀÐÀÌÅÒÐÎÌ) ÀËËÈÃÀÒÎÐÀ. // Delta, TakeProfit, StopLoss è Stop_0 çàäàíû äëÿ 4-õ ðàçðÿäíûõ êîòèðîâîê, åñëè êîòèðîâêè 5-òè ðàçðÿäíûå, òî ïðîãðàììà ñàìà ýòî îáíàðóæèâàåò // è óìíîæàåò çàäàííûå âåëè÷èíû íà 10. #property copyright "more" #property link "mailto:tradertobe@gmail.com" #include #include #include //-- /* #include #include #include #include #include #include #include #include #include #include */ #include //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- AllOrdersInit(MagicNumber); SetSignales(BUY_Sign, BUY_Stop, SELL_Sign, SELL_Stop, LastBar, bar2, bar1, bar0 ); if (OrdersOpenSet(BUY_Sign, SELL_Sign)) return(0); AllOrdersInit(MagicNumber); if (OrdersClose(BUY_Stop, SELL_Stop ) ) return(0); AllOrdersInit(MagicNumber); if (OrdersModify()) return(0); //---- return(0); // âîçâðàùàåì óïðàâëåíèå òåðìèíàëó } // end of int start() //************************************************************************************************************************** //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- if (Digits == 5 ||Digits == 3 ) { Delta *=10; TakeProfit *=10; StopLoss *=10; Stop_0 *=10; } LastBar = 0; // Ïðîâåðèì ïðàâèëüíîñòü çàäàíèé âíåøíèõ ïàðàìåòðîâ ðàáîòû ñîâåòíèêà i = 0; if (CloseAllonLIPS) i++; if (CloseAllonTEETH) i++; if (CloseAllonJAW) i++; if (i != 1) {Print(CloseParmErrorMes); bool parmserrors = true;} // // Ïðîâåðèì ïðàâèëüíîñòü çàäàíèÿ ïàðàìåòðà ïðèíóäèòåëüíîãî çàêðûòèÿ âñåõ ïîçèöèé if (CloseForced) {Print(CloseForcedParmErrorMes); parmserrors = true;} //---- // Ïðîâåðèì ïðàâèëüíîñòü çàäàíèÿ ïàðàìåòðîâ òîðãîâëè â îäíó ñòîðîíó - OpenBuyOnly OpenSellOnly if (OpenBuyOnly && OpenSellOnly) {Print(OnlyTradeParmErrorMes); parmserrors = true;} //--- if (parmserrors) {TradeAllowed = false; PlaySound("alert.wav"); Print(ParmsErrorsMes);} else if (TradeAllowed) {PlaySound("ok.wav"); Print(ParmsOKReadyMes);} else {PlaySound("ok.wav"); Print(ParmsOKNotReadyMes);} //--- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- ObjectDelete("FractalUpper"); ObjectDelete("FractalLower"); //---- return(0); }