Доработка и создание советника

MQL4 지표 전문가

명시

Добрый день.

Необходимо переписать существующий код, применяемый с TradingView и создать автоматического бота (советника) для платформы Metatraider 4.

Задание по коду:

1) Условия для входа будут такими же, как и в Стратегии, только выход из сделки будет автоматически при условии +0,20 пунктов.
2) Тайм-фрейм - 3м
3) SL - отсутствует
4) Манименджмент 5% от депо
5) Использоваться будет на криптовалютном рынке


Код стратегии:



//примечание: для распределения 1 оператора по нескольким строкам требуется 1 apce + 1 tab | 
многострочная функция — 1 вкладка 


//Рекомендуемые тикеры: SPY (D), QQQ (D) и большие индексы, AAPL (4H) 



// @version=5 


 стратегия ( 

«Davin's 10/200MA Pullback on SPY Strategy v2.0» 

 , 


     overlay= 

true 

 , 


     initial_capital= 

10000 

 , 


     default_qty_type=strategy.percent_of_equity, 


     default_qty_value= 

10 

 , 

// 10% капитала на каждую сделку 


      Commission_type=strategy.commission.cash_per_contract, 


     Commission_value = 

0.1 

 ) 

//Вставьте курс вашего брокера, IB 0,005USD или многоуровневый 



//Лучшие параметры 


// SPY D 


// Стоп-лосс 0,15 


// комиссия 0,005 USD при использовании Interactive Brokers 


// Выход при более низком закрытии 


// Купить больше, когда x% вниз --> 14% 


// НЕ ВКЛЮЧАТЬ стоп-условие с использованием пересечения MA 



// Получение пользовательского ввода 


 i_ma1 = 

input 

 . 

int 

 (title= 

"Длина MA 1" 

 , defval= 

200 

 , step= 

10 

 , group= 

"Параметры стратегии" 

 , tooltip= 

"Долгосрочная MA 200" 

 ) 


i_ma2 = 

input 

 . 

инт 

(название = 

«Длина скользящей средней 2» 

 , defval = 

10 

 , шаг = 

10 

 , группа = 

«Параметры стратегии» 

 , всплывающая подсказка = 

«Краткосрочная скользящая средняя 10» 

 ) 


i_ma3 = 

input 

 . 

int 

 (title= 

"Длина MA 3" 

 , defval= 

50 

 , step= 

1 

 , group= 

"Параметры стратегии" 

 , tooltip= 

"MA for crossover signal`" 

 ) 


i_stopPercent = 

input 

 . 

float 

 (title= 

"Процент стоп-лосса" 

 , defval= 

0,15 

 , step= 

0,01 

 , group= 

" 


"Жесткий стоп-лосс 10%" 

 ) 


i_startTime = 

input 

 .time(title= 

"Начальный фильтр" 

 , defval=timestamp( 

"01 января 2013 13:30 +0000" 

 ), group= 

"Временной фильтр" 

 , tooltip= 

"Дата начала и время начала" 

 ) 


i_endTime = 

input 

 .time(title= 

"Конец фильтра" 

 , defval=timestamp( 

"01 января 2099 19:30 +0000" 

 ), group= 

"Фильтр времени" 

 , tooltip= 

"Дата окончания и время до стоп" 

 ) 


i_lowerClose = 

ввод 

 . 

bool 

 (title= 

"Выход при нижнем закрытии" 

 , 



«Параметры стратегии» 

 , tooltip= 

«Подождите закрытия ниже после 10SMA выше, прежде чем выйти» 

 ) 

// оптимизация стратегии выхода, логический тип создает входные данные типа 


 галочки i_contrarianBuyTheDip = 

input 

 . 

bool 

 (title= 

"Покупайте всякий раз, когда просадка превышает x%" 

 , defval= 

true 

 , group= 

"Параметры стратегии" 

 , tooltip= 

"Покупайте при просадке! Всякий раз, когда просадка SPY составляет x% или более" 

 ) 


i_contrarianTrigger = 

input 

 . 

int 

 (title= 

"Запустить % падения, чтобы купить падение" 

 , defval= 

14 

 , step= 

1 

 , group= 

" 

, tooltip= 

"% падения, чтобы спровоцировать противоположный Buy the Dip!" 

) 


//14% лучше для SPY 1D 


//20% лучше для AMZN 1D 


 i_stopByCrossover_MA2_3 = 

input 

 . 

bool 

 (title= 

"Включать условие стопа при пересечении MA" 

 , defval= 

false 

 , group= 

"Параметры стратегии" 

 , tooltip= 

"Продавать при пересечении MA2/1" 

 ) 



// Получаем значения индикатора 


 ma1 = ta.sma(close, i_ma1) 

//параметр 1 


 ma2 = ta.sma(close,i_ma2) 

//параметр 2 


 ma3 = ta.sma(close,i_ma3) 

//параметр 3 


 ma_9 = ta.ema(close, 

9 

 ) 

//параметр 2 


 ma_20 = та.эма (близко, 

20 

 ) 

//param 3 



// Проверить фильтр(ы) 


 f_dateFilter = time >+ i_startTime и time <= i_endTime 

//убедиться, что введенные даты находятся в допустимом диапазоне 



// Самая высокая цена за предыдущие 52 дня: https://www. Tradingcode.net/tradingview/наибольшее-максимальное-значение/#:~:text=()%20versus%20ta.-,highest(),max()%20and%20ta. 


наивысшее52 = ta.highest(high, 

52 

 ) 


total_change = ((highest52 - close[ 

0 

 ]) / наивысшее52) * 

100 



// Проверяем условия покупки/продажи 


 var 

float 

 buyPrice = 

0  

// инициализируем цену покупки, она изменится, когда мы введем торговля ; 
float = десятичное число тип данных 0.0 


buyCondition = (close > ma1 и close < ma2 и Strategy.position_size == 

0 

 и f_dateFilter) или (strategy.position_size == 

0 

 и i_contrarianBuyTheDip == 

true 

 и total_change > i_contrarianTrigger и f_dateFilter) 

// выше 200sma, ниже краткосрочного ma (откат) + избегайте формирования пирамиды позиций 


 sellCondition = close > ma2 and Strategy.position_size > 

0 

 и (не i_lowerClose или close < low[ 

1 

 ])   

//проверка, торгуем ли мы уже + закрытие выше 10MA; 


// третье условие: ЛИБО i_lowerClose не включен ИЛИ цена закрытия должна быть < LOW предыдущей свечи [1] 



 stopDistance = Strategy.position_size > 

0 

? 
((buyPrice - close)/close) : нет данных 

// проверить, если в сделке > расчет % отбрасывает расстояние от точки входа, если нет 


 данных stopPrice = Strategy.position_size > 

0 

 ? 
(buyPrice - (buyPrice * i_stopPercent)) : нет данных 

// рассчитать цену SL, если в сделке, если нет, то нет 


 данных stopCondition = (strategy.position_size > 

0 

 и stopDistance > i_stopPercent) или (strategy.position_size > 

0 

 и (i_stopByCrossover_MA2_3== 

true 

 ) и ma3 < ma1)) 




// Входим в позиции 


, если 

 buyCondition 


    Strategy.entry(id= 

"Long" 

 , direction=strategy. 

long 

 ) 

//длинные, только 

    


если 

 buyCondition[ 

1 

 ] 

// если buyCondition истинно, предыдущая свеча 


     buyPrice := open 

// цена входа = текущая цена открытия бара 



// выход из позиции 


, если 

 sellCondition или stopCondition 


    Strategy.close(id= 

"Long" 

 , comment = 

"Exit" 

 + (stopCondition ? 

"Stop loss=true" 

 : 

"" 

 )) 

// если условие? 
"Значение для истинного" : "значение для ложного" 


     buyPrice := na 

//сброс buyPrice 



// График 


 plot(buyPrice, 

color 

 = 

color 

 .lime, style=plot.style_linebr) 


plot(stopPrice, 

color 

 = 

color 

 .red, style= plot.style_linebr, 


) 


plot(ma1, 

цвет 

 = 

цвет 

 .синий) 

//defval=200 


 plot(ma2, 

цвет 

 = 

цвет 

 .white) 

//defval=10 


 plot(ma3, 

цвет 

 = 

цвет 

 .yellow) 

// defval=50 





응답함

1
개발자 1
등급
(247)
프로젝트
253
30%
중재
0
기한 초과
3
1%
무료
게재됨: 2 코드
2
개발자 2
등급
(574)
프로젝트
945
47%
중재
309
58% / 27%
기한 초과
125
13%
무료
비슷한 주문
look at attachment! i dont know if it is a expert or indi what it needs to do is for whatever par you are on the timeframe must adjust to the slider realtime on chart as you slide the slider and the chart and loaded indicators chnag eto the trimeframe you slide to time frame range M1 to D1
I want an experienced developer to create an EA that works with a grid system. I have a video on how the EA works. I want an experienced developer who will use the video to create the same bot
Ninja Trader 8 - **** https://www.youtube.com/watch?v=iDXAA6hUt2M - Orderflows Trader vs NinjaTrader Volumetric Charts What Are The Differences Only watch this video as a reference point, this is the standard setting for Volumetric https://www.youtube.com/watch?v=YrI8byj9_mg - How to Setup Volumetric Footprint Charts in NinjaTrader 8 | Futures Day Trading Tutorial - by Bull Barbie -----------------------------------
I’m looking for a skilled MQL5 developer to help build and manage an automated trading system that bridges TradingView custom indicator alerts to an Exness MT5 account . This role involves capturing Buy/Sell signals and lot sizes from TradingView webhooks , processing them with a Python listener , and executing orders on MT5 hosted on a 24/7 VPS . The ideal candidate will ensure accurate trades, reliable execution
I need a trading signals indicator. So I can learn how to upgrade my trading skills and mentality. I will be very glad if I can upgrade my trading mentality
I want to add. to my ea pay back I want to have a Max on the grid step. Because sometimes the market is ranging and the same grid steps 5 times or more It's getting close and open, close and open. To many times. So I want to add. Maximum Payback for this grid step 1.2.3. So if I set it for 0. It will delete. The stop loss. As long as ranging in this grid step. After it went out of the grid step. Replace the stop
Hi, I am looking for a good Forex programmer that could build a EA robot , It will have to be built base on fibonachi retracement, 0 , 0.236, 0.382 , 0,5 , 0.618 , 0.786, 1, 1.618 , 2.618, and 3.618, the robot should be able to make me input the fibo numbers myself. stop Loss, T.P
PROJECT DESCRIPTION I am using a Telegram → MetaTrader trade copier (currently TWP Copier 1.08) which receives trade signals correctly but does NOT consistently execute trades on MT4, despite: Signals being received and logged AutoTrading enabled Live trading allowed Correct symbol names (no suffix/prefix issues) Manual trades working perfectly No trade conflicts or filters blocking execution CURRENT ISSUE Telegram
An EA that can pass multiple prop firms that has drawdown limits no counts blown or violated An EA that is unique With the E A bagtest for MT5 Screen share over discord assistance with back test EA that passes the prop firm in less than two months Be able to solve solve issues with back test
hello Hello, I have a project I want done for a NinjaTrader Script that would involve 2 phases. Phase 1. I simply want a ninja trader strategy that will take whatever custom user defined high/low range defines in the settings than executes a breakout trade either once a candle closes above / below the range or simply crosses the high/low of the range by placing stop orders. The way it takes the breakout will be

프로젝트 정보

예산
30 - 150 USD
기한
에서 2  21 일