This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| //+------------------------------------------------------------------+ | |
| //| CS Trend Line Breakout.mq4 | | |
| //| Ryan Sheehy | | |
| //| http://www.currencysecrets.com | | |
| //| Version: 3.0 | | |
| //| Released: 7 Jan 13 | | |
| //+------------------------------------------------------------------+ | |
| #property copyright "Ryan Sheehy" | |
| #property link "http://www.currencysecrets.com" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| //+------------------------------------------------------------------+ | |
| //| Period_Converter.mq4 | | |
| //| Copyright © 2005-2007, MetaQuotes Software Corp. | | |
| //| http://www.metaquotes.net | | |
| //+------------------------------------------------------------------+ | |
| #property copyright "Copyright © 2007, MetaQuotes Software Corp." | |
| #property link "http://www.metaquotes.net" | |
| #property show_inputs | |
| #include <WinUser32.mqh> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| //+------------------------------------------------------------------+ | |
| //| CS Auto Trend Lines (Offline).mq4 | | |
| //| Ryan Sheehy | | |
| //| http://www.currencysecrets.com | | |
| //| Version: 1.0 | | |
| //| Released: 12 Jan 13 | | |
| //+------------------------------------------------------------------+ | |
| #property copyright "Ryan Sheehy" | |
| #property link "http://www.currencysecrets.com" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /* | |
| * checkOpenTrades | |
| * This function checks open trades and compares them to risk levels. | |
| * @param sym | |
| * @return int -1 = error | |
| */ | |
| int checkOpenTrades( string sym ) { | |
| int type, revType, tradeReady, tkt, dir; | |
| double p, revP, profit, trailingStop; | |
| for ( int i = 0; i < OrdersTotal(); i++ ) { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| //+------------------------------------------------------------------+ | |
| //| Simple Channel Breakout System.mq4 | |
| //| Copyright 2013, Ryan Sheehy | |
| //| http://www.currencysecrets.com | |
| //| v1.1 - errors fixed (getLots & multipleOrders) | |
| //+------------------------------------------------------------------+ | |
| #property copyright "Copyright 2013, Ryan Sheehy" | |
| #property link "http://www.currencysecrets.com" | |
| //--- input parameters |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // this function will return the quantity of orders (both open and pending) | |
| // on the selected currency for the order type requested. | |
| int getQtyOrders( int type, string sym ) { | |
| int result = 0; | |
| int tot = OrdersTotal(); | |
| for ( int i = 0; i < tot; i++ ) { | |
| if ( OrderSelect( i, SELECT_BY_POS, MODE_TRADES ) ) { | |
| if ( OrderSymbol() == sym ) { | |
| if ( OrderType() == type ) { | |
| result += 1; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| int getOpenBar( string sym, datetime openTime ) { | |
| // each bar has the opening time at the start of the bar | |
| // eg if openTime is 12:01PM we will know at 4:00PM (when the | |
| // bar is greater than the opening time of trade) | |
| for ( int i = 0; i < Bars; i++ ) { | |
| if ( openTime >= Time[i] ) { | |
| return( i ); | |
| } | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // this function returns the spread of the currency in double form | |
| double getSpread( string sym ) { | |
| return( MarketInfo( sym, MODE_SPREAD ) * MarketInfo( sym, MODE_POINT ) ); | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // This function provides a boilerplate type template for sending email alerts about your MetaTrader code. | |
| // param subject (optional) => Usually a short description of what the email is alerting you about | |
| // param body (optional) => As the email already contains many bits of information I just use the body for detailing a reason | |
| // param systemTag (optional) => The name/tag of your expert advisor | |
| // | |
| // Example usage within my EA: | |
| // alertMe( "CLOSE long order failed", "Reason: Closing a pending buystop order in function XYZ has failed", "My Sys (v1.0)" ); | |
| void alertMe( string subject = "", string body = "", string systemTag = "" ) { | |
| SendMail( subject + " " + Symbol() + " " + systemTag , |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| void removeOldOrders( string sym, string systemTag ) { | |
| int tot = OrdersTotal(); | |
| for( int i = 0; i < tot; i++ ) { | |
| if ( OrderSelect( i, SELECT_BY_POS, MODE_TRADES ) ) { | |
| if ( OrderSymbol() == sym ) { | |
| if ( OrderType() != OP_BUY || OrderType() != OP_SELL ) { | |
| if ( OrderComment() != systemTag ) { // don't forget your new order must contain the systemTag! | |
| OrderDelete( OrderTicket() ); | |
| } | |
| } |