← К каталогу
Исходный код · ID 106

Firebird

firebird v0.50(26jul05).mq4
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Firebird — это торговый советник для MetaTrader 4, реализующий систему торговли на основе усреднённой скользящей средней (SMA) и ценовых уровней. Советник анализирует текущие цены Bid и Ask в соотношении с SMA, рассчитанной по ценам High и Low, и открывает позиции Buy/Sell при выполнении условий пробоя. Используются стандартные торговые функции MetaTrader 4 для отправки и модификации ордеров.

Советник рассчитывает среднюю цену открытия по всем текущим позициям и на её основе пересчитывает уровни тейк-профита и стоп-лосса, после чего модифицирует все открытые ордера. Параметры торговли задаются пользователем: объём лота, значения тейк-профита и стоп-лосса в пунктах, а также шаг PipStep, определяющий минимальное расстояние от предыдущей цены входа для открытия новой позиции.

В коде присутствуют закомментированные блоки, предназначенные для реализации скользящего стоп-лосса и корректировки стратегии под разные валютные пары. Текущая версия советника работает с фиксированными уровнями стоп-лосса и тейк-профита, заданными в настройках.

Настройки программы

НастройкаОписание
MA_length Длина периода скользящей средней (SMA), используемой для расчёта торговых сигналов.
slip Допустимое отклонение цены исполнения (в пунктах) при отправке торговых ордеров.
Lots Объём торговой позиции в лотах, используемый при открытии ордеров.
TakeProfit Значение тейк-профита в пунктах, устанавливаемое при открытии позиции и пересчитываемое на основе средней цены.
Stoploss Значение стоп-лосса в пунктах, устанавливаемое при открытии позиции и пересчитываемое на основе средней цены.
PipStep Шаг в пунктах, определяющий минимальное расстояние от цены предыдущей позиции для открытия новой.
Получить полный код

Поиск по коду файла

extern double MA_length = 10;	 
extern double slip = 0;
extern double Lots = 1;
extern double TakeProfit = 30;
extern double Stoploss = 2000;

extern double PipStep = 30;

int start()
{
      // код доступен только после оплаты
   }
double PriceTarget;
double AveragePrice;
int flag;
int OpeningDay;
double Tester;
double Stopper=0; 

   int cnt=0, total;
   total=OrdersTotal();
   if(total==0) OpeningDay=DayOfYear();
   OrderSelect(total-1, SELECT_BY_POS);
   double LastPrice=OrderOpenPrice();

   OrderSelect(total, SELECT_BY_POS, MODE_TRADES); 
   flag=0;

   if((iMA(NULL,0,MA_length,0,MODE_SMA,PRICE_HIGH,1)*1.02)<Bid && (Bid>=(LastPrice+(PipStep*Point))||total==0)) // Go SHORT -> Only sell if >= 30 pips above previous position entry	 	 
     {
      OrderSend(Symbol(),OP_SELL,Lots,Bid,slip,Bid+(Stoploss*Point),Bid-(TakeProfit*Point),0,0,Red);
      flag=1;

     }   

   if((iMA(NULL,0,MA_length,0,MODE_SMA,PRICE_LOW,1)*0.98)>Ask && (Ask<=(LastPrice-(PipStep*Point))||total==0)) // Go LONG -> Only buy if >= 30 pips below previous position entry	 
     {
      OrderSend(Symbol(),OP_BUY,Lots,Ask,slip,Ask-(Stoploss*Point),Ask+(TakeProfit*Point),0,0,Blue);
      flag=1;

     }     

   total=OrdersTotal();
   AveragePrice=0;  

 if(total>0)
   {
   for(cnt=0;cnt<total;cnt++)

Показано первые 50% кода (символов: 2014)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
201,40₽ ≈ $2.46