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? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.