smc2.mq4
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «smc2.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Параметр code_language: MQL4, платформа MetaTrader 4. Тип товара — торговый советник (экспертный советник). Советник работает на основе пользовательских графических объектов-линий тренда, которые задают уровни для входа в длинные и короткие позиции, а также уровни для их закрытия. При инициализации создаются шесть объектов OBJ_TREND, обозначающих уровни открытия и закрытия для длинных и коротких позиций, а также целевые уровни.
В обработчике start() советник проверяет наличие открытых позиций и закрывает их при достижении заданных условий по ценовым уровням. Для открытия новых позиций используются правила сравнения цены закрытия с уровнями, заданными объектами. Советник также содержит логику управления трейлинг-стопом, которая в текущей версии отключена. Перед открытием позиции проверяется достаточность свободного маржи.
Настройки программы
| Настройка | Описание |
|---|---|
| TakeProfit | TakeProfit — Уровень фиксации прибыли в пунктах, задаваемый пользователем. |
| Lots | Lots — Размер торговой позиции в лотах. |
| InitialStop | InitialStop — Начальный уровень стоп-лосса в пунктах. |
| TrailingStop | TrailingStop — Расстояние для трейлинг-стопа в пунктах. |
Поиск по коду файла
extern double TakeProfit = 50;
extern double Lots = 0.1;
extern double InitialStop = 30;
extern double TrailingStop = 20;
int init()
{
// код доступен только после оплаты
}
int start()
{
// код доступен только после оплаты
}
int cnt,total,ticket,MinDist,tmp;
double Spread;
if(Bars<100){
Print("bars less than 100");
return(0);
}
MinDist=MarketInfo(Symbol(),MODE_STOPLEVEL);
Spread=(Ask-Bid);
double OpenLongVal =ObjectGet("OpenL",3);
double CloseLongVal =ObjectGet("CloseL",3);
double TargetLongVal =ObjectGet("TargetL",3);
double OpenShortVal =ObjectGet("OpenS",3);
double CloseShortVal =ObjectGet("CloseS",3);
double TargetShortVal=ObjectGet("TargetS",3);
total=OrdersTotal();
if(total>0)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()==OP_BUY && OrderSymbol()==Symbol())
{
if(Close[1] < CloseLongVal)
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close LONG position
}}
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()==OP_SELL && OrderSymbol()==Symbol()) // check for symbol
{
if(Close[1] > CloseShortVal)
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close SHORT position
}}
OrderSelect(cnt,SELECT_BY_POS, MODE_TRADES);
if(OrderType()==OP_BUY && OrderSymbol()==Symbol()) //symbol check
{
if(Bid > TargetLongVal)
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,Yellow);
}}
OrderSelect(cnt,SELECT_BY_POS, MODE_TRADES);
if(OrderType()==OP_BUY && OrderSymbol()==Symbol()) //symbol check
Показано первые 50% кода (символов: 4551)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.