Jump to content

forex autokey


forexmx

Recommended Posts

  • 3 months later...

Re: [req] forex autokey

 

Just a few more info about Forex Autokey (taken from their promotion email and website)

 

Manual Back-Test Results:

Number Of Trades: 89

Percent Profitable: 84%

Net Profit: $7,381

 

Live Results (Before Forex AutoKey):

Number Of Trades: 73

Percent Profitable: 49%

Net profit: $2,593

 

Live Results (USING Forex AutoKey):

Number Of Trades: 78

Percent Profitable: 76%

Net profit: $6,257

 

IMPORTANT: Forex AutoKey IS NOT FOR SALE!

Any of my subscribers who buy the Surefire Trading Challenge product (which launches on Tuesday June 9th) using my link will get Forex AutoKey for FREE.

 [url]http://fx-autokey.com/[/url] 

 

So... can anybody share it here please? =D>

Link to comment
Share on other sites

Re: hi guys here's my 2 cents enjoy Forex Autokey

 

Hi i'm new to this but hope this helps here's the link

 

http://www.forex-auto-scalper.com//manager/bonus.php

 

Then enter this receipt no: G9KE88JN

 

 

pleas open code and cracked (key)

 

Pack with deco. unedu.

http://depositfiles.com/files/ec5dgiur2

Pass: Russia

Link to comment
Share on other sites

Re: hi guys here's my 2 cents enjoy Forex Autokey

 

http://www.forex-auto-scalper.com//manager/bonus.php

 

Then enter this receipt no: G9KE88JN

 

 

pleas open code and cracked (key)

 

Pack with deco. unedu.

http://depositfiles.com/files/ec5dgiur2

Pass: Russia

.......................................................................................

thanks alot buddy..

can somebody help to upload in 4shared/rapidshare..i cant donwloand from depostfiles..

We are sorry, but all downloading slots for your country are busy.

 

pls help..

:shand:

Link to comment
Share on other sites

Re: hi guys here's my 2 cents enjoy Forex Autokey

 

http://www.forex-auto-scalper.com//manager/bonus.php

 

Then enter this receipt no: G9KE88JN

 

 

pleas open code and cracked (key)

 

Pack with deco. unedu.

http://depositfiles.com/files/ec5dgiur2

Pass: Russia

.......................................................................................

thanks alot buddy..

can somebody help to upload in 4shared/rapid*share..i cant donwloand from depostfiles..

We are sorry, but all downloading slots for your country are busy.

 

pls help..

:shand:

h**p://www*ziddu*com/download/5175088/AK.rar.html

Link to comment
Share on other sites

  • 4 weeks later...

Re: [req] forex autokey

 

/*

Generated by EX4-TO-MQ4 decompiler V4.0.223.1c []

Website: http://purebeam.biz

E-mail : [email protected]

*/

#property copyright "Copyright ?2009, Accura-FX Limited"

#property link "http://www.accura-fx.com"

 

#include <stdlib.mqh>

 

#import "AutoKey.dll"

int Activate(double a0, int a1, int a2, string a3, int a4);

bool KeyScan(int a0, int a1);

#import "kernel32.dll"

int GetTimeZoneInformation(int& a0[]);

#import

 

extern string TradeKey = "";

extern double LotSize = 0.0;

extern int Target = 0;

extern int StopLoss = 0;

extern int Slippage = 3;

extern string TradeNote = "";

extern int Reference = 1000;

extern string AuthentiCode;

int gi_124 = 10;

double gd_128 = 4.0;

double gd_136 = 25.0;

string gs_144 = "V1_1_4";

string gs_152 = "OrderReliable fname unset";

int gi_unused_160 = 0/* NO_ERROR */;

int gi_164 = 3;

bool gi_168 = FALSE;

bool gi_172 = FALSE;

string gs_176 = " ";

string gs_184 = "";

 

int init() {

int li_4 = 9 * (Digits == 3 || Digits == 5) + 1;

gi_168 = TRUE;

Comment(gs_176 + "Initialising...");

if (!IsDllsAllowed()) {

Comment(gs_176 + "*** Change MetaTrader Options ***\n" + gs_176 + "Press \'F7\' to access the Expert Advisor properties dialog and click the \'Common\' tab\n" + gs_176 +

"- \'Allow DLL imports\' must be checked\n" + gs_176 + "- \'Confirm DLL function calls\' must be unchecked");

gi_168 = FALSE;

return (0);

}

if (!IsTesting() && !IsExpertEnabled()) {

Comment(gs_176 + "*** Change MetaTrader Options ***\n" + gs_176 + "Click the red \'Expert Advisors\' button to enable EA processing\n" + gs_176 + "Press \'F7\' to access the Expert Advisor properties dialog then click the \'OK\' button");

gi_168 = FALSE;

return (0);

}

if (StringLen(TradeKey) != 1) {

Comment(gs_176 + "*** Change Expert Advisor Options ***\n" + gs_176 + "Press \'F7\' to access the Expert Advisor properties dialog and click the \'Inputs\' tab\n" +

gs_176 + "Enter a suitable TradeKey\n" + gs_176 + "- for example: A..Z or 0..9");

gi_168 = FALSE;

return (0);

}

if (LotSize == 0.0) {

Comment(gs_176 + "*** Change Expert Advisor Options ***\n" + gs_176 + "Press \'F7\' to access the Expert Advisor properties dialog and click the \'Inputs\' tab\n" +

gs_176 + "Enter a suitable LotSize value\n" + gs_176 + "- for example: 0.1 (fixed lots)");

gi_168 = FALSE;

return (0);

}

if (Target != 0 && Target < 10 * li_4) {

Comment(gs_176 + "*** Change Expert Advisor Options ***\n" + gs_176 + "Press \'F7\' to access the Expert Advisor properties dialog and click the \'Inputs\' tab\n" +

gs_176 + "Enter a suitable Target distance (minimum = " + DoubleToStr(10 * li_4, 0) + ")\n" + gs_176 + "- for example: 0 (no target) or " + DoubleToStr(50 * li_4, 0) + " (" + DoubleToStr(50 * li_4, 0) + " pips)");

gi_168 = FALSE;

return (0);

}

if (StopLoss != 0 && StopLoss < 10 * li_4) {

Comment(gs_176 + "*** Change Expert Advisor Options ***\n" + gs_176 + "Press \'F7\' to access the Expert Advisor properties dialog and click the \'Inputs\' tab\n" +

gs_176 + "Enter a suitable StopLoss distance (minimum = " + DoubleToStr(10 * li_4, 0) + ")\n" + gs_176 + "- for example: 0 (no stoploss) or " + DoubleToStr(50 * li_4, 0) + " (" + DoubleToStr(50 * li_4, 0) + " pips)");

gi_168 = FALSE;

return (0);

}

if (Slippage != 0 && Slippage < 1 * li_4) {

Comment(gs_176 + "*** Change Expert Advisor Options ***\n" + gs_176 + "Press \'F7\' to access the Expert Advisor properties dialog and click the \'Inputs\' tab\n" +

gs_176 + "Enter a suitable Slippage distance (minimum = " + DoubleToStr(1 * li_4, 0) + ")\n" + gs_176 + "- for example: 0 (no slippage) or " + DoubleToStr(3 * li_4, 0) + " (" + DoubleToStr(3 * li_4, 0) + " pips)");

gi_168 = FALSE;

return (0);

}

/* string ls_8 = StringTrimLeft(StringTrimRight(AuthentiCode));

int li_0 = Activate(1.0, AccountNumber(), IsDemo(), CharToStr(StringLen(ls_8)) + ls_8, 1);

gs_184 = "";

if (li_0 == 1) gs_184 = " - Upgrade required";

if (li_0 == 2) {

Comment(gs_176 + "*** Change Expert Advisor Options ***\n" + gs_176 + "Press \'F7\' to access the Expert Advisor properties dialog and click the \'Inputs\' tab\n" +

gs_176 + "Enter your AuthentiCode (this is the RECEIPT NUMBER of your qualifying purchase)");

gi_168 = FALSE;

return (0);

}

if (li_0 > 2) {

gs_184 = " - Error detected";

Comment(gs_176 + "Initialisation complete - Code: " + li_0);

Print("Initialisation complete - Code: " + li_0);

} else Comment(gs_176 + "Initialisation complete - Code: " + li_0);

return (0);*/

}

 

int deinit() {

return (0);

}

 

int start() {

if (!gi_168) return (0);

Comment(gs_176 + "AutoKey v" + DoubleToStr(1.0, 2) + "A" + gs_184

+ "\n"

+ gs_176 + "====================================\n" + gs_176 + "Local: " + TimeToStr(TimeLocal(), TIME_SECONDS) + " GMT: " + TimeToStr(TimeGMT(), TIME_SECONDS) + " Server: " + TimeToStr(TimeCurrent(), TIME_SECONDS) + " (" + StrTimeZoneServer() + ")\n" + gs_176 + "====================================\n");

if (!gi_172) {

if (KeyScan(StringGetChar(TradeKey, 0), 1)) gi_172 = OrderSendReliable2Step(Symbol(), 0, LotSize, MarketInfo(Symbol(), MODE_ASK), Slippage, StopLoss, Target, TradeNote, Reference, 0, 32768);

else

if (KeyScan(StringGetChar(TradeKey, 0), -1)) gi_172 = OrderSendReliable2Step(Symbol(), 1, LotSize, MarketInfo(Symbol(), MODE_BID), Slippage, StopLoss, Target, TradeNote, Reference, 0, 255);

} else

if (!KeyScan(StringGetChar(TradeKey, 0), 1) && !KeyScan(StringGetChar(TradeKey, 0), -1)) gi_172 = FALSE;

return (0);

}

 

double TimeZoneLocal() {

int lia_0[43];

switch (GetTimeZoneInformation(lia_0)) {

case 0:

return (lia_0[0] / (-60.0));

case 1:

return (lia_0[0] / (-60.0));

case 2:

return ((lia_0[0] + lia_0[42]) / (-60.0));

}

Print("Unknown return value from GetTimeZoneInformation in kernel32.dll. Returning 0");

return (0);

}

 

double TimeZoneServer() {

int li_0 = (TimeCurrent() - TimeLocal()) / 60;

int li_4 = MathRound(li_0 / 30.0);

li_0 = 30 * li_4;

return (TimeZoneLocal() + li_0 / 60.0);

}

 

string StrTimeZoneServer() {

string ls_ret_0;

if (TimeZoneServer() >= 0.0) ls_ret_0 = "GMT+" + DoubleToStr(TimeZoneServer(), 0);

else ls_ret_0 = "GMT" + DoubleToStr(TimeZoneServer(), 0);

return (ls_ret_0);

}

 

int TimeGMT() {

int li_ret_0 = TimeLocal() - 3600.0 * TimeZoneLocal();

int li_ret_4 = TimeCurrent() - 3600.0 * TimeZoneServer();

if (li_ret_0 > li_ret_4 + 300) return (li_ret_0);

return (li_ret_4);

}

 

int OrderSendReliable(string a_symbol_0, int a_cmd_8, double a_lots_12, double a_price_20, int a_slippage_28, double a_price_32, double a_price_40, string a_comment_48, int a_magic_56, int a_datetime_60 = 0, color a_color_64 = -1) {

double ld_96;

a_price_20 = NormalizeDouble(a_price_20, Digits);

a_price_32 = NormalizeDouble(a_price_32, Digits);

a_price_40 = NormalizeDouble(a_price_40, Digits);

gs_152 = "OrderSendReliable";

OrderReliablePrint("Attempting to open an " + OrderReliableTypeToString(a_cmd_8) + " order (Lots: " + a_lots_12 + ", Price: " + a_price_20 + ", SL: " + a_price_32 +

", TP: " + a_price_40 + ")");

if (!IsConnected()) {

OrderReliablePrint("Error: IsConnected() == false");

gi_unused_160 = 6;

return (-1);

}

if (IsStopped()) {

OrderReliablePrint("Error: IsStopped() == True");

gi_unused_160 = 2;

return (-1);

}

for (int l_count_68 = 0; !IsTradeAllowed() && l_count_68 < gi_124; l_count_68++) OrderReliableSleepRandomTime(gd_128, gd_136);

if (!IsTradeAllowed()) {

if (gi_164 > 1) OrderReliablePrint("Error: No operation possible because IsTradeAllowed() == False, even after retries.");

gi_unused_160 = 146;

return (-1);

}

int l_digits_72 = MarketInfo(a_symbol_0, MODE_DIGITS);

Print("Digits: ", Digits, " digits: ", l_digits_72);

if (l_digits_72 > 0) {

a_price_20 = NormalizeDouble(a_price_20, l_digits_72);

a_price_32 = NormalizeDouble(a_price_32, l_digits_72);

a_price_40 = NormalizeDouble(a_price_40, l_digits_72);

}

if (a_price_32 != 0.0) OrderReliableEnsureValidLevels(a_symbol_0, a_price_20, a_price_32, a_price_40);

int l_error_76 = GetLastError();

l_error_76 = 0;

gi_unused_160 = 0;

bool li_80 = FALSE;

bool li_84 = FALSE;

int l_ticket_88 = -1;

if (a_cmd_8 == OP_BUYSTOP || a_cmd_8 == OP_SELLSTOP || a_cmd_8 == OP_BUYLIMIT || a_cmd_8 == OP_SELLLIMIT) {

l_count_68 = 0;

while (!li_80) {

if (IsTradeAllowed()) {

l_ticket_88 = OrderSend(a_symbol_0, a_cmd_8, a_lots_12, a_price_20, a_slippage_28, a_price_32, a_price_40, a_comment_48, a_magic_56, a_datetime_60, a_color_64);

l_error_76 = GetLastError();

gi_unused_160 = l_error_76;

} else l_count_68++;

switch (l_error_76) {

case 0/* NO_ERROR */:

li_80 = TRUE;

break;

case 4/* SERVER_BUSY */:

case 6/* NO_CONNECTION */:

case 129/* INVALID_PRICE */:

case 136/* OFF_QUOTES */:

case 137/* BROKER_BUSY */:

case 146/* TRADE_CONTEXT_BUSY */:

l_count_68++;

break;

case 135/* PRICE_CHANGED */:

case 138/* REQUOTE */:

RefreshRates();

continue;

break;

case 130/* INVALID_STOPS */:

ld_96 = MarketInfo(a_symbol_0, MODE_STOPLEVEL) * MarketInfo(a_symbol_0, MODE_POINT);

if (a_cmd_8 == OP_BUYSTOP) {

if (MathAbs(Ask - a_price_20) <= ld_96) li_84 = TRUE;

} else {

if (a_cmd_8 == OP_SELLSTOP)

if (MathAbs(Bid - a_price_20) <= ld_96) li_84 = TRUE;

}

li_80 = TRUE;

break;

default:

li_80 = TRUE;

}

if (l_count_68 > gi_124) li_80 = TRUE;

if (li_80) {

if (l_error_76 != 0/* NO_ERROR */) OrderReliablePrint("Non-retryable error: " + OrderReliableErrTxt(l_error_76));

if (l_count_68 > gi_124) OrderReliablePrint("Retry attempts maxed out at " + gi_124);

}

if (!li_80) {

OrderReliablePrint("Retryable error (" + l_count_68 + "/" + gi_124 + "): " + OrderReliableErrTxt(l_error_76));

OrderReliableSleepRandomTime(gd_128, gd_136);

RefreshRates();

}

}

if (l_error_76 == 0/* NO_ERROR */) {

OrderReliablePrint("Apparently successful OP_BUYSTOP or OP_SELLSTOP order placement - order details are:");

OrderSelect(l_ticket_88, SELECT_BY_TICKET, MODE_TRADES);

OrderPrint();

return (l_ticket_88);

}

if (!li_84) {

OrderReliablePrint("Failed to execute stop or limit order after " + l_count_68 + " retries");

OrderReliablePrint("Failed to open order: " + OrderReliableTypeToString(a_cmd_8) + " (" + a_symbol_0 + ", Price: " + a_price_20 + ", SL: " + a_price_32 + ", TP: " +

a_price_40 + ")");

OrderReliablePrint("Last error: " + OrderReliableErrTxt(l_error_76));

return (-1);

}

}

if (li_84) {

OrderReliablePrint("Switching from a limit order to a market order because market price is too close.");

if (a_cmd_8 == OP_BUYSTOP || a_cmd_8 == OP_BUYLIMIT) {

a_cmd_8 = 0;

a_price_20 = Ask;

} else {

if (a_cmd_8 == OP_SELLSTOP || a_cmd_8 == OP_SELLLIMIT) {

a_cmd_8 = 1;

a_price_20 = Bid;

}

}

}

l_error_76 = GetLastError();

l_error_76 = 0;

gi_unused_160 = 0;

l_ticket_88 = -1;

if (a_cmd_8 == OP_BUY || a_cmd_8 == OP_SELL) {

l_count_68 = 0;

while (!li_80) {

if (IsTradeAllowed()) {

l_ticket_88 = OrderSend(a_symbol_0, a_cmd_8, a_lots_12, a_price_20, a_slippage_28, a_price_32, a_price_40, a_comment_48, a_magic_56, a_datetime_60, a_color_64);

l_error_76 = GetLastError();

gi_unused_160 = l_error_76;

} else l_count_68++;

switch (l_error_76) {

case 0/* NO_ERROR */:

li_80 = TRUE;

break;

case 4/* SERVER_BUSY */:

case 6/* NO_CONNECTION */:

case 129/* INVALID_PRICE */:

case 136/* OFF_QUOTES */:

case 137/* BROKER_BUSY */:

case 146/* TRADE_CONTEXT_BUSY */:

l_count_68++;

break;

case 135/* PRICE_CHANGED */:

case 138/* REQUOTE */:

RefreshRates();

continue;

break;

default:

li_80 = TRUE;

}

if (l_count_68 > gi_124) li_80 = TRUE;

if (!li_80) {

OrderReliablePrint("Retryable error (" + l_count_68 + "/" + gi_124 + "): " + OrderReliableErrTxt(l_error_76));

OrderReliableSleepRandomTime(gd_128, gd_136);

RefreshRates();

}

if (li_80) {

if (l_error_76 != 0/* NO_ERROR */) OrderReliablePrint("Non-retryable error: " + OrderReliableErrTxt(l_error_76));

if (l_count_68 > gi_124) OrderReliablePrint("Retry attempts maxed out at " + gi_124);

}

}

if (l_error_76 == 0/* NO_ERROR */) {

OrderReliablePrint("Apparently successful OP_BUY or OP_SELL order placement - order details are:");

OrderSelect(l_ticket_88, SELECT_BY_TICKET, MODE_TRADES);

OrderPrint();

return (l_ticket_88);

}

OrderReliablePrint("Failed to execute OP_BUY/OP_SELL, after " + l_count_68 + " retries");

OrderReliablePrint("Failed to open order: " + OrderReliableTypeToString(a_cmd_8) + " (" + a_symbol_0 + ", Price: " + a_price_20 + ", SL: " + a_price_32 + ", TP: " +

a_price_40 + ")");

OrderReliablePrint("Last error: " + OrderReliableErrTxt(l_error_76));

return (-1);

}

return (0);

}

 

int OrderSendReliable2Step(string as_0, int ai_8, double ad_12, double ad_20, int ai_28, double a_pips_32, double a_pips_40, string as_48, int ai_56, int ai_60 = 0, int ai_64 = -1) {

int li_unused_72;

gs_152 = "OrderSendReliable2Step";

OrderReliablePrint("Attempting to open an " + OrderReliableTypeToString(ai_8) + " order (Lots: " + ad_12 + ", Price: " + ad_20 + ", SL: " + a_pips_32 + ", TP: " +

a_pips_40 + ")");

int l_ticket_68 = OrderSendReliable(as_0, ai_8, ad_12, ad_20, ai_28, 0, 0, as_48, ai_56, ai_60, ai_64);

if (l_ticket_68 > 0 && a_pips_32 != 0.0 || a_pips_40 != 0.0) {

OrderSelect(l_ticket_68, SELECT_BY_TICKET);

li_unused_72 = 0;

if (ai_8 == 0) OrderModifyReliable(l_ticket_68, OrderOpenPrice(), OrderOpenPrice() - a_pips_32 * Point, OrderOpenPrice() + a_pips_40 * Point, 0, ai_64);

else OrderModifyReliable(l_ticket_68, OrderOpenPrice(), OrderOpenPrice() + a_pips_32 * Point, OrderOpenPrice() - a_pips_40 * Point, 0, ai_64);

}

return (l_ticket_68);

}

 

int OrderModifyReliable(int a_ticket_0, double a_price_4, double a_price_12, double a_price_20, int a_datetime_28, color a_color_32 = -1) {

string ls_40;

gs_152 = "OrderModifyReliable";

OrderReliablePrint("Attempting to modify order - ticket #" + a_ticket_0 + " (Price: " + a_price_4 + ", SL: " + a_price_12 + ", TP: " + a_price_20 + ")");

if (!IsConnected()) {

OrderReliablePrint("Error: IsConnected() == False");

gi_unused_160 = 6;

return (0);

}

if (IsStopped()) {

OrderReliablePrint("Error: IsStopped() == True");

return (0);

}

for (int l_count_36 = 0; !IsTradeAllowed() && l_count_36 < gi_124; l_count_36++) OrderReliableSleepRandomTime(gd_128, gd_136);

if (!IsTradeAllowed()) {

if (gi_164 > 1) OrderReliablePrint("Error: No operation possible because IsTradeAllowed()==False, even after retries.");

gi_unused_160 = 146;

return (0);

}

int l_error_52 = GetLastError();

l_error_52 = 0;

gi_unused_160 = 0;

bool li_56 = FALSE;

l_count_36 = 0;

bool l_bool_60 = FALSE;

while (!li_56) {

if (IsTradeAllowed()) {

l_bool_60 = OrderModify(a_ticket_0, a_price_4, a_price_12, a_price_20, a_datetime_28, a_color_32);

l_error_52 = GetLastError();

gi_unused_160 = l_error_52;

} else l_count_36++;

if (l_bool_60 == TRUE) li_56 = TRUE;

switch (l_error_52) {

case 0/* NO_ERROR */:

li_56 = TRUE;

break;

case 1/* NO_RESULT */:

li_56 = TRUE;

break;

case 4/* SERVER_BUSY */:

case 6/* NO_CONNECTION */:

case 129/* INVALID_PRICE */:

case 136/* OFF_QUOTES */:

case 137/* BROKER_BUSY */:

case 146/* TRADE_CONTEXT_BUSY */:

case 128/* TRADE_TIMEOUT */:

l_count_36++;

break;

case 135/* PRICE_CHANGED */:

case 138/* REQUOTE */:

RefreshRates();

continue;

break;

default:

li_56 = TRUE;

}

if (l_count_36 > gi_124) li_56 = TRUE;

if (!li_56) {

OrderReliablePrint("Retryable error (" + l_count_36 + "/" + gi_124 + "): " + OrderReliableErrTxt(l_error_52));

OrderReliableSleepRandomTime(gd_128, gd_136);

RefreshRates();

}

if (li_56) {

if (l_error_52 != 0/* NO_ERROR */ && l_error_52 != 1/* NO_RESULT */) OrderReliablePrint("Non-retryable error: " + OrderReliableErrTxt(l_error_52));

if (l_count_36 > gi_124) OrderReliablePrint("Retry attempts maxed out at " + gi_124);

}

}

if (l_bool_60 == TRUE || l_error_52 == 0/* NO_ERROR */) {

OrderReliablePrint("Apparently successful order modification - updated order details are:");

OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES);

OrderPrint();

return (1);

}

if (l_error_52 == 1/* NO_RESULT */) {

OrderReliablePrint("Server reported that order modification did not actually change any parameters");

OrderReliablePrint("Redundant modification of ticket #" + a_ticket_0 + " (" + ls_40 + ", Price: " + a_price_4 + ", SL: " + a_price_12 + ", TP: " + a_price_20 + ")");

return (1);

}

OrderReliablePrint("Failed to execute modification after " + l_count_36 + " retries");

OrderReliablePrint("Failed to modify ticket #" + a_ticket_0 + " (" + ls_40 + ", Price: " + a_price_4 + ", SL: " + a_price_12 + ", TP: " + a_price_20 + ")");

OrderReliablePrint("Last error: " + OrderReliableErrTxt(l_error_52));

return (0);

}

 

string OrderReliableErrTxt(int ai_0) {

return ("" + ai_0 + ":" + ErrorDescription(ai_0));

}

 

void OrderReliablePrint(string as_0) {

if (!(IsTesting() || IsOptimization()))

if (gi_164 > 0) Print(gs_152 + " " + gs_144 + ":" + as_0);

}

 

string OrderReliableTypeToString(int ai_0) {

if (ai_0 == 0) return ("OP_BUY");

if (ai_0 == 1) return ("OP_SELL");

if (ai_0 == 4) return ("OP_BUYSTOP");

if (ai_0 == 5) return ("OP_SELLSTOP");

if (ai_0 == 2) return ("OP_BUYLIMIT");

if (ai_0 == 3) return ("OP_SELLLIMIT");

return ("(Type == " + ai_0 + ")");

}

 

void OrderReliableEnsureValidLevels(string a_symbol_0, double ad_8, double &ad_16, double &ad_24) {

double ld_32;

if (ad_8 > 0.0) {

ad_16 = MathMax(ad_16, 0);

ad_24 = MathMax(ad_24, 0);

ld_32 = MarketInfo(a_symbol_0, MODE_STOPLEVEL) * MarketInfo(a_symbol_0, MODE_POINT);

if (MathAbs(ad_8 - ad_16) <= ld_32) {

if (ad_8 > ad_16) ad_16 = ad_8 - ld_32;

else {

if (ad_8 < ad_16) ad_16 = ad_8 + ld_32;

else OrderReliablePrint("Error: Requested price == StopLoss level");

}

ad_16 = NormalizeDouble(ad_16, MarketInfo(a_symbol_0, MODE_DIGITS));

}

if (MathAbs(ad_8 - ad_24) <= ld_32) {

if (ad_8 < ad_24) ad_24 = ad_8 + ld_32;

else {

if (ad_8 > ad_24) ad_24 = ad_8 - ld_32;

else OrderReliablePrint("Error: Requested price == TakeProfit level");

}

ad_24 = NormalizeDouble(ad_24, MarketInfo(a_symbol_0, MODE_DIGITS));

}

}

}

 

void OrderReliableSleepRandomTime(double ad_0, double ad_8) {

double ld_16;

double ld_24;

int li_32;

if (IsTesting() == 0) {

ld_16 = MathCeil(ad_0 / 0.1);

if (ld_16 > 0.0) {

li_32 = MathRound(ad_8 / 0.1);

ld_24 = 1.0 - 1.0 / ld_16;

Sleep(100);

for (int l_count_36 = 0; l_count_36 < li_32; l_count_36++) {

if (MathRand() > 32768.0 * ld_24) break;

Sleep(100);

}

}

}

}

Link to comment
Share on other sites

  • 2 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...