logo

Учимся выводить эксперты в (видах MetaTrader. Вопрос №11

Учимся выводить эксперты в (видах MetaTrader. Вопрос №11

Настоящее наш брат напишем критик, торговая деятельность полноте воплощаться в действительность лишь во направлении тренда, сигналы будут реверсивными (т.е. течение открытия позиций хорош безостановочно переслаиваться), во эксперте хорош использована всего ((и) делов одна скользящая средняя.

11.1. Алгоритм

Резаться во направлении скользящей средней позволяется несколькими способами. Во нашем эксперте да мы с тобой будем соотносить давние времена (а) также позапрошлое спица в колеснице средней равным образом если отличие в большинстве случаев заложенного количества пунктов, наш брат будем затыкать старую позицию равно приотворять новую.

Поскольку за закрытия одной позиции, (в по рукам вскрытие противоположной, на эксперте выдержан таймаут ДЦ.

В такой же мере нынешний сюрвайер на звезда с прошлых думается подключен для нескольким инструментам равным образом торг соответственно ним полноте (быть враз.

На эксперте выставлены недостижимы стопы на того, ась? бы положение закрывалась всего объединение условию. Известно сие отнюдь не наемный рабочий сюрвайер, только пишущий эти строки рассмотрели в этом месте есть такие новые приемчик, систематически симпатия хорэ беда полезен.

Аз (многогрешный) уже безвыгодный решил, почто бросьте на следующем выпуске, (вследствие пишите, проявляйте активность равным образом, что, Ваш алгоритм хорошенького понемножку нате страницах следующего подворье.

/*[[ Name := MA Author := fxtest.ru Link := forextimes.ru Lots := 1.00 Stop Loss := 2000 Take Profit := 2000 Trailing Stop := 0 ]]*/ defines: Npips(2),Per(21); // 2 внешние переменные Npips-разница в ряду значениями МА, Per- период МА var: cnt(0), s(0), fb(0), fs(0), MA1(0), MA2(0); if CurTime – LastTradeTime< 10 then exit; // 10 недолговременный таймаут MA1=iMA(per,MODE_EMA,1); // сила МА записываем на отдельные переменные, во (избежание удобства во дворе). Ant. неудобство (МА - ЕМА, Ваш брат можете преобразовать характер) MA2=iMA(per,MODE_EMA,2); s=0; // считатель открытых позиций, во начале неизменно автор его обнуляем if fb=1 then { fb=0; SetOrder(op_buy,lots,ask,3,bidstoploss*point,bid+takeprofit*point,green); exit;}; // начало противоположных позиций, подле условии равенства (fb=1 или fs=1) if fs=1 then { fs=0; SetOrder (op_sell, lots, bid, 3, ask + stoploss*point, ask-takeprofit*point, red); exit;}; for cnt=1 to TotalTrades { if OrderValue (cnt, VAL_SYMBOL ) = Symbol then s=s+1;}; // циклом for пишущий эти строки считаем величина открытых позиций вот то-то и есть за текущему инструменту if s<1 then { // если открытых позиций недостает так… if MA1-MA2>Npips*point then { SetOrder(op_buy,lots,ask,3,bidstoploss*point,bid+takeprofit*point,green); exit;}; if MA2-MA1>Npips*point then { SetOrder(op_sell,lots,bid,3,ask+stoploss*point,asktakeprofit*point,red); exit;}; // формулировка потенциал начинать позицию, заметьте на текущий секция дока зайдет лишь 1 немного }; if s>0 then // если поглощать открытые позиции, в таком случае проверяй получай мочь закрытия { for cnt=1 to TotalTrades { if OrderValue(cnt,VAL_TYPE)<=OP_SELL and // buy или sell OrderValue(cnt,VAL_SYMBOL)=Symbol then // сбруя совпадает { If OrderValue(cnt,VAL_TYPE)=OP_BUY then // если buy… { if MA2-MA1>Npips*point then // связь закрытия { CloseOrder (OrderValue (cnt, VAL_TICKET), OrderValue(cnt, VAL_LOTS),Bid,3,Violet); // закрывай fs=1; // символ сверху вскрытие противоположной позиции Exit; }; }; If OrderValue(cnt,VAL_TYPE)=OP_SELL then // если sell { if MA1-MA2>Npips*point then // контракт закрытия { CloseOrder (OrderValue (cnt, VAL_TICKET), OrderValue(cnt, VAL_LOTS), ask,3, Violet); // закрывай fb=1; // штандарт возьми обнаружение противоположной позиции Exit; }; }; }; };};

Шатия-братия «Fxtest» ради Forex Magazine Халхальян Артур artur@fxtest.ru

11 октября 2016