Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void start()
- {
- double lot = 0.1; // so 1 pip = 1 dollar
- if(Volume[0] != 1) return; // only trade on candle beginning
- pipValue = get_pip_value(); // get pip value
- //
- // PUT YOUR CODE BELOW HERE:
- //
- // exit trades based on signal line <-> buffer
- double macd_histogram = get_MACD(0, 1, InpFastEMA, InpSlowEMA, InpSignalSMA);
- double macd_line = get_MACD(1, 1, InpFastEMA, InpSlowEMA, InpSignalSMA);
- if(macd_histogram > macd_line) { close_orders(-1); } // close shorts when histogram is above signal
- if(macd_histogram < macd_line) { close_orders(+1); } // close longs when histogram is beyond signal
- // enter trades based on a zero-line cross
- double macd_histogram_now = get_MACD(0, 1, InpFastEMA, InpSlowEMA, InpSignalSMA); // 1 bar in past; mode is 0 for histogram
- double macd_histogram_past = get_MACD(0, 2, InpFastEMA, InpSlowEMA, InpSignalSMA); // 2 bars in past; mode is 0 for histogram
- if(macd_histogram_past < 0 && macd_histogram_now > 0) // macd histogram crossed from beyond -> above zero line
- if(open_trades() == 0) // only 1 open trade at a time
- trade (+1);
- if(macd_histogram_past > 0 && macd_histogram_now < 0) // macd histogram crossed from above -> beyond zero line
- if(open_trades() == 0) // only 1 open trade at a time
- trade (-1);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement