Seeking a Talented, English-Speaking Programmer To Build a Profit Monster (my simple robot) - Logic/Syntax Example Provided, Detailed Instructions & Quality Bonus of up to 200 additional USD

2020.09.08 Experts Scripts

Specification

Hello Talented Programmer,


I am seeking to develop a simple robot with as few bugs as possible. The logic is straightforward enough - I have included a detailed framework and summary at the bottom of this message in the BLUE SECTION.

While I can program at an amateur level, I am a full-time options trader that does not have time to learn the MQL4 syntax. Also, I do not primarily trade FOREX - but I do believe that using a robot to trade continuous EMA crossovers using increasingly large entry sizes on highly specific time intervals is a decent way of generating easy income. While I would say that neither the logic nor the strategy itself is terribly difficult to implement, it is extremely important that the ruleset be followed seamlessly. Otherwise, a lot can go wrong very quickly, especially if the program lacks functional efficacy.


To this end, I will offer a base fee of 150 dollars for a high-quality, functional product. Essentially, it must function properly and include all of the features/logical components that I have listed in the RED SECTION below. It must also prove that it can follow the strategic sequence explained later on.

Also, I will offer up an additional incentive bonus for up to 200 dollars depending on my appraisal of the product, timeliness of delivery and other factors which I outline in the GREEN SECTION. Basically, if it functions properly and according to specifications, but either the process was inefficient or the attention to detail was lacking, then you would not receive any additional bonus. I am a pretty reasonable person, so it's highly unlikely that any completed product that lives up to my initial acceptance would not receive any additional compensation. The bonus attributes will be made clearer as you read on.



Ok, from this point on, I will break down the different sections, which contain specific information that you will require so that you can gain an understanding of the qualities I am looking for in the product and the service you provide:


RED SECTION contains information regarding Components/Indicators

GREEN SECTION contains some of the criteria that would merit the highest additional bonus. Remember, some of these are subjective and none are negotiable after final appraisal

BLUE SECTION contains two subsections: 1) Detailed Example of Strategy & Typical Order Entry Sequence 2) Summary of General Sequence/Ruleset


RED SECTION:

Indicators/Components:

  • Base Timeframe is 1-Hour, but can work on all time frames

  • 21-Period Exponential Moving Average - Functional on all timeframes (Pink Line), (Lowest Thickness)
  • 62-Period Exponential Moving Average - Functional on all timeframes (Royal Blue Line), (Lowest Thickness)
  • 186-Period Exponential Moving Average - Functional on all timeframes (Indigo Line), (Medium Thickness)

  • 618-Period Exponential Moving Average - All Timeframes (Gold Line), (Mid-High Thickness)
  • 1618-Period Exponential Moving Average - All Timeframes (Silver Line), (Highest Thickness)

  • A neat template with a black background. See the attached screenshot "EA Chart Template..." for an image of my ideal chart template, but disregard the dots

  • Functionality that automatically closes ALL positions in case of any sort of restart that may occur accidentally or purposefully
  • Code is clean and easily adjustable just in case. Program must be in English and contains at least some comments/section
  • Contains as few bugs as possible and works straight away


GREEN SECTION:

Factors for Highest Possible Compensation:

  • Attention to detail - how aligned is the code, template and functionality to the instructions listed herein?
  • Functionality - does the program contain (m)any bugs? Do all the functions satisfy the criteria of the general strategy?
  • User-Friendliness - how long does it take me to figure out where all the components are? how detailed are the comments in the code?
  • Attractiveness - how does the code look? can I understand it just by reading it one time? is the template either identical or better than the screenshot?
  • Timeliness - how long did it take to deliver the v1 product, and, is the v1 product the final product?
  • Responsiveness/Communication - were updates provided frequently? were questions asked retroactively? consistent timeline updates?
  • Friendliness/Professionalism - are you a good dude/lady? were you easy to work with and reasonable? how likely would I want to work with you again?


BLUE SECTION:

Detailed Example of Trading Sequence: The concept and indicators are simple, but the exact strategic execution is what will make this profitable long-term. I have included an example of what a daily sequence of trades and outcomes would look like using the strategy and indicators I've devised.


DETAILED EXAMPLE: Let's assume that my account starts with 1,000 dollars and the Current Trend is BULLISH:


1) Identify Current Trend - if the 618 EMA (GOLD) is trending above the 1618 EMA (SILVER), then I consider the current trend "Bullish." If the 1618 were trending above the 618 EMA, the trend would be "Bearish." It does not matter whether a given pair is in a bullish trend or a bearish trend to start, only that the robot can accurately identify the current trend on any timeframe (but especially the hourly) using this criteria. Perhaps a textbox on the upper-left corner of the chart stating what the given trend is, would be useful.

2A) Enter a BUY Order -  Assuming the trend starts as BULLISH, then the first order should be a BUY order placed whenever the 21-EMA crosses over the 186-EMA (for any timeframe). Since I prefer the hourly time frame as my default, let us assume that the BUY we just placed was triggered by the 21-Hour EMA (PINK) crossing over, "above", the 186-Hour EMA (INDIGO).

2B) Order Entry Specifications - The BUY order should be made using 90% of my entire portfolio value (NO MARGIN) and should also contain a regular stop loss that is nearly impossible to trigger. An example would be a stop loss that prevents my account value from falling below 25% of its original value at time t=0, i.e. before the first trade of the session is placed.

  • Summary of Entry So Far: BUY Order of 900 dollars of XX/XX pair was triggered when the 1) current trend was confirmed BULLISH via the 618-Hour & 1618-Hour EMAs and 2) the 21-Hour EMA Crossed Above the 186-Hour EMA. In addition, a regular (not trailing) stop loss of XX.00 pips was placed far behind the entry price, such that it would not be triggered unless my total account value fell below 250 dollars.
  • ***Now the robot should do nothing until one or the other binary outcomes occurs at some time t.

  • Binary Outcome 1: The stop loss gets triggered the trade goes against me to such an extent that my current account balance falls below (.25 * Beg_Account_Bal). The robot should restart entire application and all incidental positions should be closed out immediately. This is very unlikely using this strategy, so it is not an expected outcome.
  • Binary Outcome 2: The price trades profitably for X number of hours until the 21-EMA CROSSES UNDER the 62-EMA, at which point the trade is closed out.

3A) Take Profit SELL Order - Assuming that Outcome 2 occurs, the program should now operate using "Current Account Balance" = Balance Before Profitable Trade + Profit on Trade, not the original portfolio balance that was registered before the first trade of the day. For example, first trade above yields 200 USD in profit, then current account balance = 1200 USD.

3B) Short SELL Order (Trade 2 of Current Session) - So, now that the first long position realized a profit, the next trade should come pretty soon. Now that the 21-EMA has crossed UNDER the 62-EMA (Take Profit Signal), the next trade should be a short SELL entry using a higher amount -> 0.5*1200 USD = 600 USD using a buy stop that will trigger when/if my account breaches 300 dollars (not original 250 dollars). The short SELL entry should get triggered when the 21-Hour EMA crosses UNDER the 186-Hour EMA. Now that the short has been entered, we again have two binary outcomes.

  • Binary Outcome 1: The trade whipsaws hard and the BUY STOP gets triggered way above the entry for an unlikely loss and breach of the 25% rule, leaving the account value with a balance of less than 300 dollars. Program auto-exits all positions and restarts the application.
  • Binary Outcome 2: The trade continues lower until the 21-Hour EMA crosses OVER the 62-EMA, at which point, the trade closes for another profit and it looks to enter the next long position as soon as the next time the 21-Hour EMA crosses ABOVE the 186-Hour EMA.

4) Continuously Enter and Exit Long/Short/Long, etc. Positions - Using the 21-Hour EMA, 62-Hour EMA for Profit Taking on Both Long/Short Positions, and the 186-Hour EMA as the trigger to initiate a new position, long or short. The process should continue to operate until either the session ends, a position is stopped out, or I manually override and close out positions whenever deemed necessary.


Quick Summary of Strategy & Sequence

The point of this continuous sequence of exiting long then entering short then entering long, etc. is to have a machine perform a series of boring, but extremely high-probability trades that take too much time/patience for me to do manually. I will monitor it occasionally and may override the stop loss if needed. Ultimately, with my limited oversight, the portfolio should grow slowly and continuously in the beginning and then exponentially as size is added organically. The very loose stop loss and lack of margin use will allow each trade the proper time and space it needs to become profitable.

*Note: If the 618-EMA is trending under the 1618-EMA, then the overall trend is bearish and the first trade placed should be a short-entry when 21-EMA crosses UNDER the 186-EMA.


BREAKDOWN SAMPLE SYNTAX OF TRADING SEQUENCE (Using BULLISH start example above)

I am not a very experienced programmer, so I did my best to illustrate the steps described above in basic programming syntax for ease of understanding.


  • %general_trend_1 = BULLISH
  • %general_trend_2 = BEARISH
  • IF   ema(618) > ema(1618)   THEN   general_trend = BULLISH;
  • IF   ema(618) < ema(1618)   THEN   general_trend = BEARISH;

  • %initial_account_balance          =     account_balance    WHERE    session_time = 0
  • %current_account_balance        =     initial_account_balance + amount(SELL_LONG_FOR_PROFIT)
  • %forex_pair                               =    [array of possible forex pairs that are tradable at initial time of login]

  • %BUY_LONG_i                           =      BUY(0.5*current_account_balance*forex_pair_i)    IF   [(ema(21)   CROSSOVER   (ema(186)]             //*Initial Long Trade of $900 Position*//
  • %SELL_STOP_i         =      STOPLOSS_i(BUY_LONG_i   (IF   current_account_balance   <=   (0.25*current_account_balance) ))   //*Binary Outcome 1 = Close All Positions +  Restart App*//
  • ELSEIF    MARKET_SELL_ALL(forex_pair_i)
  • AND        RESTART APPLICATION

  • %SELL_LONG_FOR_PROFIT_i       =      SELL(BUY_LONG_i)   IF  [(ema(21)   CROSSUNDER   (ema(62))]     //*Binary Outcome 2 = Close for Profit + Add to Next Short Position Size*//

  • %SELL_SHORT_i                         =      SELL(0.5*current_account_balance*forex_pair_i)      IF    [(ema(21)   CROSSUNDER    (ema(186)] 
  • %BUY_STOP_i    =      Opposite of SELL_STOP_i logic above
  • %BUY_SHORT_FOR_PROFIT         =      BUY(SELL_SHORT_i)     IF    [(ema(21)    CROSSOVER     (ema(62)]


  • Repeat and enter next BUY_LONG_i


End of Basic Sequence;



I know its syntactically incorrect, but hope this makes things easier than reading all those paragraphs. While I am new to this process for hiring through mql, I am no stranger to contractual business arrangements, so please reach out to me if you are interested in this opportunity.


I look forward to potentially working with you.


- Harry










































































































































Responded

1
Developer 1
2020.09.08
Rating
4.82
(112)
Projects
168
21%
Arbitration
55
11% / 56%
Overdue
64
38%
Working
2
Developer 2
2020.09.08
Rating
4.8
(311)
Projects
453
43%
Arbitration
105
17% / 71%
Overdue
103
23%
Loaded
3
Developer 3
2020.09.08
Rating
4.92
(638)
Projects
1089
72%
Arbitration
85
28% / 45%
Overdue
350
32%
Busy
4
Developer 4
2020.09.08
Rating
5
(5)
Projects
6
0%
Arbitration
1
0% / 0%
Overdue
4
67%
Working
5
Developer 5
2020.09.08
Rating
4.95
(99)
Projects
138
28%
Arbitration
13
31% / 62%
Overdue
29
21%
Working
6
Developer 6
2020.09.08
Rating
5
(6)
Projects
8
25%
Arbitration
3
33% / 33%
Overdue
1
13%
Busy
7
Developer 7
2020.09.08
Rating
4.86
(7)
Projects
17
12%
Arbitration
6
17% / 67%
Overdue
7
41%
Working
8
Developer 8
2020.09.08
Rating
4.71
(7)
Projects
9
22%
Arbitration
1
0% / 100%
Overdue
2
22%
Free
9
Developer 9
2020.09.08
Rating
4.5
(14)
Projects
19
11%
Arbitration
0
Overdue
1
5%
Working
10
Developer 10
2020.09.08
Rating
5
(14)
Projects
14
21%
Arbitration
0
Overdue
0
Working
11
Developer 11
2020.09.08
Rating
4.72
(32)
Projects
38
34%
Arbitration
7
29% / 57%
Overdue
6
16%
Working
12
Developer 12
2020.09.08
Rating
4.35
(40)
Projects
124
28%
Arbitration
61
13% / 52%
Overdue
63
51%
Working
13
Developer 13
2020.09.08
Rating
4.89
(102)
Projects
162
25%
Arbitration
47
32% / 26%
Overdue
36
22%
Busy
14
Developer 14
2020.09.08
Rating
4.89
(196)
Projects
424
51%
Arbitration
43
44% / 35%
Overdue
216
51%
Loaded
15
Developer 15
2020.09.08
Rating
4.9
(10)
Projects
20
0%
Arbitration
6
17% / 67%
Overdue
11
55%
Busy
16
Developer 16
2020.09.11
Rating
4.86
(58)
Projects
126
32%
Arbitration
7
14% / 71%
Overdue
32
25%
Free

Project information

Budget
150 - 350 USD
For the developer
135 - 315 USD
Deadlines
from 2 to 10 day(s)

Customer

Placed orders1
Arbitrage count0