Работа завершена
Время выполнения 3 часа
Отзыв от заказчика
Great dev, delivered fast + good communication
Отзыв от исполнителя
Very nice working experience
Техническое задание
Link to External Description:
Here is the Pinescript code below:
Key Task is to convert from the standard RSI indicator:
Steps:
1) Deliver in a quick timeframe - should be straight forward (within 24 - 48 hrs max)
2) May extend to add it in an EA (after the source code is shown). But for now it is just making the indicator the same as the Pinescript version
See the code below:
// This source code is free to use, copy, and alter in any way you choose. // ...but credit is always nice :) //@version=4 //@author=JayRogers study( "HARSI", "HARSI 🐙", false, format.price, 2 ) //////////////////////////////////////////////////////////////////////////////// // // // ====== ABOUT THIS INDICATOR // // // // - RSI based Heikin Ashi candle oscillator // // // // ====== ARTICLES and FURTHER READING // // // // - https://www.investopedia.com/terms/h/heikinashi.asp // // // // "Heikin-Ashi is a candlestick pattern technique that aims to reduce // // some of the market noise, creating a chart that highlights trend // // direction better than typical candlestick charts" // // // // ====== REASON FOR STUDY // // // // - Mostly experimental. I wanted to see if I could translate RSI into a // // Heikin Ashi function and retain it's oscillating nature. That goal // // was met more easily than I anticipated with quite delightful results. // // // // ====== DISCLAIMER // // // // Any trade decisions you make are entirely your own responsibility. // // I've made an effort to squash all the bugs, but you never know! // // // //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// // // // ====== TOOLTIPS ====== // // // //////////////////////////////////////////////////////////////////////////////// string TT_HARSI = "Period for the RSI calculations used to generate the" + "candles. This seperate from the RSI plot/histogram length." string TT_PBIAS = "Smoothing feature for the OPEN of the HARSI candles." + "\n\nIncreases bias toward the prior open value which can" + " help provide better visualisation of trend strength." + "\n\n** By changing the Open values, High and Low can also" + " be distorted - however Close will remain unchanged." string TT_SMRSI = "This option smoothes the RSI in a manner similar to HA" + " open, but uses the realtime rsi rather than the prior" + " close value." string TT_STOCH = "Uses the RSI generated by the above settings, and as such" + " will be affected by the smoothing option." string TT_STFIT = "Adjusts the vertical scaling of the stochastic, can help" + " to prevent distortion of other data in the channel." + "\n\nHas no impact cross conditions." //////////////////////////////////////////////////////////////////////////////// // // // ====== INPUTS ====== // // // //////////////////////////////////////////////////////////////////////////////// // -- Candle config string GROUP_CAND = "Config » HARSI Candles" i_lenHARSI = input( 14, "Length", input.integer, group = GROUP_CAND, minval = 1, tooltip = TT_HARSI ) i_smoothing = input( 6, "Open Smoothing", input.integer, group = GROUP_CAND, minval = 1, maxval = 100, tooltip = TT_PBIAS ) string INLINE_COL = "Colour Pallette" i_colUp = input( color.teal, "Colour Pallette ", input.color, group = GROUP_CAND, inline = INLINE_COL ) i_colDown = input( color.red, " ", input.color, group = GROUP_CAND, inline = INLINE_COL ) i_colWick = input( color.gray, " ", input.color, group = GROUP_CAND, inline = INLINE_COL ) // -- RSI plot config string GROUP_PLOT = "Config » RSI Plot" i_source = input( ohlc4, "Source", input.source, group = GROUP_PLOT ) i_lenRSI = input( 7, "Length", input.integer, group = GROUP_PLOT, minval = 1 ) i_mode = input( true, "Smoothed Mode RSI?", input.bool, group = GROUP_PLOT, tooltip = TT_SMRSI ) i_showPlot = input( true, "Show RSI Plot?", input.bool, group = GROUP_PLOT ) i_showHist = input( true, "Show RSI Histogram?", input.bool, group = GROUP_PLOT ) // -- Stochastic RSI plots config string GROUP_STOCH = "Config » Stochastic RSI Plot" string INLINE_STDS = "Stoch Draw States" i_showStoch = input( false, "Show Stochastic? ", input.bool, group = GROUP_STOCH, inline = INLINE_STDS, tooltip = TT_STOCH ) i_ribbon = input( true, "Ribbon?", input.bool, group = GROUP_STOCH, inline = INLINE_STDS ) i_smoothK = input( 3, "Smoothing K", input.integer, group = GROUP_STOCH, minval = 1 ) i_smoothD = input( 3, "Smoothing D", input.integer, group = GROUP_STOCH, minval = 1 ) i_stochLen = input( 14, "Stochastic Length", input.integer, group = GROUP_STOCH, minval = 1 ) i_stochFit = input( 80, "Stoch Scaling %", input.integer, group = GROUP_STOCH, minval = 1, maxval = 100, tooltip = TT_STFIT ) // -- Channel OB/OS config string GROUP_CHAN = "Config » OB/OS Boundaries" i_upper = input( 20, "OB", input.integer, group = GROUP_CHAN, inline = "OB", minval = 1, maxval = 50 ) i_upperx = input( 40, "OB Extreme", input.integer, group = GROUP_CHAN, inline = "OB", minval = 1, maxval = 50 ) i_lower = input( -20, "OS", input.integer, group = GROUP_CHAN, inline = "OS", minval = -50, maxval = -1 ) i_lowerx = input( -40, "OS Extreme", input.integer, group = GROUP_CHAN, inline = "OS", minval = -50, maxval = -1 ) //////////////////////////////////////////////////////////////////////////////// // // // ====== FUNCTIONS ====== // // // //////////////////////////////////////////////////////////////////////////////// // zero median rsi helper function, just subtracts 50. f_zrsi( _source, _length ) => rsi( _source, _length ) - 50 // zero median stoch helper function, subtracts 50 and includes % scaling f_zstoch( _source, _length, _smooth, _scale ) => float _zstoch = stoch( _source, _source, _source, _length) - 50 float _smoothed = sma( _zstoch, _smooth ) float _scaled = ( _smoothed / 100 ) * _scale // mode selectable rsi function for standard, or smoothed output f_rsi( _source, _length, _mode ) => // get base rsi float _zrsi = f_zrsi( _source, _length ) // smoothing in a manner similar to HA open, but rather using the realtime // rsi in place of the prior close value. var float _smoothed = na _smoothed := na( _smoothed[1] ) ? _zrsi : ( _smoothed[1] + _zrsi ) / 2 // return the requested mode _mode ? _smoothed : _zrsi // RSI Heikin-Ashi generation function f_rsiHeikinAshi( _length ) => // get close rsi float _closeRSI = f_zrsi( close, _length ) // emulate "open" simply by taking the previous close rsi value float _openRSI = nz( _closeRSI[1], _closeRSI ) // the high and low are tricky, because unlike "high" and "low" by // themselves, the RSI results can overlap each other. So first we just go // ahead and get the raw results for high and low, and then.. float _highRSI_raw = f_zrsi( high, _length ) float _lowRSI_raw = f_zrsi( low, _length ) // ..make sure we use the highest for high, and lowest for low float _highRSI = max( _highRSI_raw, _lowRSI_raw ) float _lowRSI = min( _highRSI_raw, _lowRSI_raw ) // ha calculation for close float _close = ( _openRSI + _highRSI + _lowRSI + _closeRSI ) / 4 // ha calculation for open, standard, and smoothed/lagged var float _open = na _open := na( _open[ i_smoothing ] ) ? ( _openRSI + _closeRSI ) / 2 : ( ( _open[1] * i_smoothing ) + _close[1] ) / ( i_smoothing + 1 ) // ha high and low min-max selections float _high = max( _highRSI, max( _open, _close ) ) float _low = min( _lowRSI, min( _open, _close ) ) // return the OHLC values [ _open, _high, _low, _close ] //////////////////////////////////////////////////////////////////////////////// // // // ====== SERIES, LINES and LABELS ====== // // // //////////////////////////////////////////////////////////////////////////////// // standard, or ha smoothed rsi for the line plot and/or histogram float RSI = f_rsi( i_source, i_lenRSI, i_mode ) // stoch stuff float StochK = f_zstoch( RSI, i_stochLen, i_smoothK, i_stochFit ) float StochD = sma( StochK, i_smoothD ) // get OHLC values to use in the plotcandle() [ O, H, L, C ] = f_rsiHeikinAshi( i_lenHARSI ) // candle body colouring color bodyColour = C > O ? i_colUp : i_colDown color wickColour = i_colWick // shadow, invisible color colShadow = color.rgb( 0, 0, 0, 20 ) color colNone = color.rgb( 0, 0, 0, 100 ) // rsi color color colRSI = color.rgb( 250, 200, 50, 0 ) // stoch ribbon fill color colStochK = color.new( #0094FF, 0 ) color colStochD = color.new( #FF6A00, 0 ) color colStochFill = StochK >= StochD ? color.new( colStochK, 50 ) : color.new( colStochD, 50 ) //////////////////////////////////////////////////////////////////////////////// // // // ====== DRAWING and PLOTTING ====== // // // //////////////////////////////////////////////////////////////////////////////// // zero median RSI channel hlines upperx = hline( i_upperx, "OB Extreme", color.new( color.silver, 60 ) ) upper = hline( i_upper, "OB", color.new( color.silver, 80 ) ) median = hline( 0, "Median", color.orange, hline.style_dotted ) lower = hline( i_lower, "OS", color.new( color.silver, 80 ) ) lowerx = hline( i_lowerx, "OS Extreme", color.new( color.silver, 60 ) ) // channel fill fill( upper, upperx, color.new( color.red, 90 ), title = "Background Fill OB" ) fill( upper, lower, color.new( color.blue, 90 ), title = "Background Channel" ) fill( lower, lowerx, color.new( color.green, 90 ), title = "Background Fill OS" ) // make our HA rsi candles plotcandle( O, H, L, C, "HARSI", bodyColour, wickColour, bordercolor = bodyColour ) // RSI overlay plot plot( i_showPlot ? RSI : na, "RSI Shadow", colShadow, 3 ) plot_rsi = plot( i_showPlot ? RSI : na, "RSI Overlay", colRSI, 1 ) buy = C < O and O > 18 and RSI > i_upper and falling(RSI,1) sell = C > O and O < -18 and RSI < i_lower and rising(RSI,1) buy1 = C > O and C < -7 and rising(RSI,2) sell2 = C < O and C > 7 and falling(RSI,2) plotshape(sell, style=shape.circle, size=size.tiny, color=color.lime, location =location.bottom) plotshape(buy, style=shape.circle, size=size.tiny, color=color.red, location =location.top) plotshape(buy1, style=shape.circle, size=size.tiny, color=color.orange, location =location.bottom) plotshape(sell2, style=shape.circle, size=size.tiny, color=color.orange, location =location.top) alertcondition(sell, "Buy") alertcondition(buy, "Sell") alertcondition(buy1, "Close Short") alertcondition(sell2, "Close Long") // -- PEANUT
Откликнулись
1
Оценка
Проекты
22
23%
Арбитраж
5
40%
/
60%
Просрочено
2
9%
Работает
2
Оценка
Проекты
499
67%
Арбитраж
5
40%
/
0%
Просрочено
4
1%
Свободен
Опубликовал: 8 примеров
3
Оценка
Проекты
598
35%
Арбитраж
64
20%
/
58%
Просрочено
147
25%
Свободен
Опубликовал: 1 статью, 22 примера
4
Оценка
Проекты
220
75%
Арбитраж
0
Просрочено
0
Свободен
5
Оценка
Проекты
178
39%
Арбитраж
4
25%
/
50%
Просрочено
14
8%
Свободен
6
Оценка
Проекты
102
23%
Арбитраж
12
25%
/
17%
Просрочено
13
13%
Свободен
7
Оценка
Проекты
945
47%
Арбитраж
309
58%
/
27%
Просрочено
125
13%
Свободен
Похожие заказы
Ninjarader indicator
30+ USD
I trade ES futures on the Ninja trader platform. I recently came across an indicator and wanted to check with you if you can build a similar indicator that works on Orenko or Ninja renko charts, and also combines support and resistance untouched. Below is the indicator, which will tell you market chop and to avoid. I want to include a support and resistance bar on the chart when there is no chop please let me know
Project Description: I have a fully working Pine Script for TradingView called MFHA 3-Step Market Structure Strategy V2 . I need it converted into MT5 , with the logic kept as close to the Pine version as possible. What I need: MT5 Indicator Exact oscillator logic Multi-timeframe logic using 4H, 15M, and 1M EMA filter MTF EMA dashboard RSI display Buy and sell visual signals Background state/flash behavior where
I am looking for an experienced MQL5 developer to continue optimization work on an existing Expert Advisor (MQ5 source file available, 2.5MB). Important: This is NOT a project to build a new EA. The task is strictly to refine and improve the current system while keeping the core strategy intact. The EA is already functional and stable. A full code audit and baseline backtesting have already been done, and key
📌 EXPERT ADVISOR (EA) DEVELOPMENT COMPLETE A–Z FINAL REQUIREMENT DOCUMENT (FINAL VERSION) 1. 🔐 SECURITY SYSTEM (MANDATORY) The EA must include strict security checks. If any security condition fails, EA must immediately STOP trading. 1.1 Account Lock #define ALLOWED_ACCOUNT 5047656761 EA must run ONLY on this account number If account does not match: ❌ EA stops trading 🚨 Alert message 📲 Telegram notification to
Hello, and please read everything !!! I am looking for a developer who can recreate a strategy similar to an EA I already have. The EA works well on demo, especially during specific volatility windows (for example DE40 between 09:00 and 10:00 Frankfurt time), but on real accounts it produces constant losses even with IC Markets Raw and VPS close to the broker. 🎯 Objective The goal is to recreate and adapt this
As the title suggests, I need an EA whose algorithm earns commission without incurring excessive losses from the trading volume at the broker....Like Exness/Vantage, or do you have any other ideas
Senior Goat Sculptor EA
30 - 200 USD
I need for an EA for XAUUSD using a grid + Martingle + hedging strategy developer Main features: • Open Buy & Sell at start (hedging) • Grid system with adjustable step (price-based levels) • Lot multiplier (martingale-style) • Fixed TP per trade + basket TP (close all in profit) • Continuous re-entry after TP • Risk management (max trades, max lot, equity stop) EA should be stable, error-free, and work with
Darwish
50 - 100 USD
I want a bot that runs on any timeframe, but for now, I’ll set it on 1 minute. It should watch for buy and sell signals. Each time it opens a trade, as soon as it makes a small profit like 1, 2, or 3 dollars it closes, then checks for the next signal. If it sees a buy, it buys; if it sees a sell, it sells—just repeating the cycle, over and over, until I stop it
📢 Project Title:MT5 Expert Advisor (EA) – Advanced Renko Strategy (Full Automation) 📄 Project Description:I want to develop a fully automated MT5 Expert Advisor (EA) based on my existing TradingView Renko strategy.I already have a working Pine Script that generates Buy/Sell alerts with ATR and other logic. Now I need the same strategy to be fully converted into MT5 EA with built-in Renko logic (no external
Need trading robot
30 - 100 USD
I need a trading robot specifically for gold (XAUUSD) that follows a high-probability scalping and intraday strategy based on 15-minute candle confirmations. The bot should identify key support and resistance zones, detect breakouts, fake breakouts, and pullbacks before entering trades. It must include entry conditions based on candle patterns such as engulfing and rejection wicks, and optionally fair value gaps
Информация о проекте
Бюджет
30+ USD
Сроки выполнения
до 1 дн.
