Disliked{quote} I am using V3P 1021 with settings attached, I think it's all right ... {file}Ignored
The check that the previous candle is in the right direction is build in the rsi cross filter.
info@metacharttools,com
Trading Dashboard For Currency Basket Trader (EA) 29 replies
I need a Trading Dashboard or Trading Panel 1 reply
Dashboard DB_CCFp-Diff Sessions/News Trading 6 replies
Dashboard trading EURNZD 3 replies
Which dashboard for basket trading? 9 replies
Disliked{quote} I am using V3P 1021 with settings attached, I think it's all right ... {file}Ignored
Disliked{quote} For RSI cross you do not really need the m-candle 1 and m-candle 2 unless you set them a a totally different timeframe than you use for rsi. The check that the previous candle is in the right direction is build in the rsi cross filter.Ignored
DislikedV3P Build 1029 Rudimentary market flat filter. It is a signal filter for now to demonstrate the workings but will become a trade filter later on. Also notice the extra crs/previous crs in the currency meter block. {image} {image} {image} {file}Ignored
Disliked{quote} Jibalapasan good day, I have a doubt in your way to trade Forex. If the required conditions are met in each sail 30 minutes you execute an operation? CHFJPY looks example, is the strongest pair of the day, always RSI below 25, everything else red, every 30 minutes would open a short? came a time when the trend changed and this operation will not losing? thank you very much and sorry for my bad English {image}Ignored
Disliked{quote} I guess play time is over for the moment. Nice observation GoldenE! {image}Ignored
DislikedI tested my CRS settings at -20/20 and it seems normal. {image}{image}Ignored
Disliked{quote} At the moment i have one terminal with the FLT (market flat) filter on it (set at buy+sell > 100%) and it's not trading and two others (RSI & CRS) whithout the flat filter losing almost every trade they take !Ignored
Disliked{quote} I guess play time is over for the moment. Nice observation GoldenE! {image}Ignored
Disliked{quote} For RSI cross you do not really need the m-candle 1 and m-candle 2 unless you set them a a totally different timeframe than you use for rsi. The check that the previous candle is in the right direction is build in the rsi cross filter.Ignored
Disliked{quote} Just use a higher value because 20 they reach very easy and fast. I used a filter of -30 / +20 and I can show you many screens from last night where one (1) condition was met only!Ignored
Dislikedhi Hotpotato! I have this error when i load the EA. Can you solve this? Thanks {image}Ignored
Disliked{image}{image} hı hotpotato.V3p 1025 gbpaud say buy.but ash1 ash 2 not buy?Ignored
Disliked{quote} The only zero divide i had was in the creation of the correlation table and that was due to a lack of historical data. Run the forceloadhistory script or restart the EA a couple of times...Ignored
Disliked{quote} Where do you get that ash1 and 2 say no buy ? Both are greener than green....Ignored
QuoteDislikedCompare timestamp of mail and order executation and calculate slippage! It's between 0.0 - 0.8 Pip, hence I am wondering why the orders on your db are always that late?
Disliked{quote} this graphic no buy.jibala say bot of green and rsı cross 75 entered trade.dash is buy but graphic say dont trade{image}Ignored
DislikedFYI about slippage: we use an API for the orders to be executed on MetaTrader, hence we should expect slippage. How it works? After signal is dectected in M$ Excel it starts some macros for sending email, skype and order of course. Compare timestamp of mail and order executation and calculate slippage! It's between 0.0 - 0.8 Pip, hence I am wondering why the orders on your db are always that late? {image} {image} JibalaIgnored
int SendOrder(string symbol, int orderType, double volumeInLot, int openSlipAllowedInPoints, int magicNumber, string orderComment) { if (orderType == OP_BUY) double requestedPrice = MarketInfo(symbol, MODE_ASK); else requestedPrice = MarketInfo(symbol, MODE_BID); int orderStartPointInTime = GetTickCount(); int ticket = OrderSend(symbol, orderType, volumeInLot, requestedPrice, OpenSlipAllowedInPoints, 0, 0, orderComment, magicNumber, 0); int orderExecutionDurationInMs = GetTickCount() - orderStartPointInTime; if (ticket == -1) { //execution failed int errorCode = GetLastError(); Print(StringConcatenate("Error sending order: " + errorCode + " (" + ErrorDescription(errorCode) + "). Execution duration = ", orderExecutionDurationInMs, "ms")); //"Time (Local)", "Symbol", "Open or close", "Ticket", "Execution duration (ms)", "Slippage (QCU)", "Error code", "Error description" FileWrite(diskFileHandle, TimeToStr(TimeLocal(), TIME_DATE|TIME_MINUTES|TIME_SECONDS), symbol, "open", ticket, orderExecutionDurationInMs, "", errorCode, ErrorDescription(errorCode)); FileFlush(diskFileHandle); } else { if (OrderSelect(ticket, SELECT_BY_TICKET)) { if (orderType == OP_BUY) double slippageIncurred = OrderOpenPrice() - requestedPrice; else slippageIncurred = requestedPrice - OrderOpenPrice(); Print(StringConcatenate("Execution duration = ", orderExecutionDurationInMs, "ms,Slippage = ", DoubleToStr(slippageIncurred * 10000, 1), "pips")); FileWrite(diskFileHandle, TimeToStr(TimeLocal(), TIME_DATE|TIME_MINUTES|TIME_SECONDS), symbol, "open", ticket, orderExecutionDurationInMs, DoubleToStr(slippageIncurred, Digits)); FileFlush(diskFileHandle); } } return (ticket); }
bool CloseOpenOrder(string symbol, int ticketToClose, int closeSlipAllowedInPoints, int magicNumber, bool checkMagicNumber) { int orderStartPointInTime = GetTickCount(); if (OrderSelect(ticketToClose, SELECT_BY_TICKET, MODE_TRADES)) { if (CheckMagicNumber) if (OrderMagicNumber() != magicNumber) return(false); if (OrderSymbol() != symbol) return(false); if (OrderType() == OP_BUY) double requestedPrice = MarketInfo(symbol, MODE_BID); else requestedPrice = MarketInfo(symbol, MODE_ASK); bool orderCloseSuccess = OrderClose(ticketToClose, OrderLots(), requestedPrice, closeSlipAllowedInPoints); if (!orderCloseSuccess) { int errorCode = GetLastError(); int orderExecutionDurationInMs = GetTickCount() - orderStartPointInTime; if (errorCode != 0) Print(StringConcatenate(GetTickCount(), "Error closing order: " + errorCode + " (" + ErrorDescription(errorCode) + "). Execution duration = ", orderExecutionDurationInMs, "ms")); //OrderPrint(); //ticket number; open time; trade operation; amount of lots; symbol; open price; StopLoss; TakeProfit; close time; close price; commission; swap; profit; comment; magic number; pendingorder expiration date. //"Time (Local)", "Symbol", "Open or close", "Ticket", "Execution duration (ms)", "Slippage (QCU)", "Error code", "Error description" FileWrite(diskFileHandle, TimeToStr(TimeLocal(), TIME_DATE|TIME_MINUTES|TIME_SECONDS), symbol, "close", ticketToClose, orderExecutionDurationInMs, "", errorCode, ErrorDescription(errorCode)); FileFlush(diskFileHandle); return(false); } else { if (OrderSelect(ticketToClose, SELECT_BY_TICKET, MODE_HISTORY)) { if (OrderType() == OP_BUY) double slippageIncurred = requestedPrice - OrderClosePrice(); else slippageIncurred = OrderClosePrice() - requestedPrice; orderExecutionDurationInMs = GetTickCount() - orderStartPointInTime; Print(StringConcatenate("Execution duration = ", orderExecutionDurationInMs, "ms,Slippage = ", DoubleToStr(slippageIncurred * 10000, 1), "pips")); FileWrite(diskFileHandle, TimeToStr(TimeLocal(), TIME_DATE|TIME_MINUTES|TIME_SECONDS), symbol, "close", ticketToClose, orderExecutionDurationInMs, DoubleToStr(slippageIncurred, Digits)); FileFlush(diskFileHandle); } return (orderCloseSuccess); } } else { errorCode = GetLastError(); Print(StringConcatenate(GetTickCount(), ": Error selecting order. (" + errorCode + ": " + ErrorDescription(errorCode) + ")")); } return (orderCloseSuccess); }
int init() { string fileName = "Execution Statistics_" + AccountCompany() + "_" + AccountServer() + ".csv"; diskFileHandle = FileOpen(fileName, FILE_CSV|FILE_READ|FILE_WRITE, ','); if(diskFileHandle <= 0) return(0); if(!FileIsEnding(diskFileHandle)) FileSeek(diskFileHandle, 0, SEEK_END); //append if (FileTell(diskFileHandle) == 0) FileWrite(diskFileHandle, "Time (Local)", "Symbol", "Open or close", "Ticket", "Execution duration (ms)", "Slippage (QCU)", "Error code", "Error description"); return(0); }[highlight=#F8F8F8][/highlight]