MQL4 compilation errors

Hi all I am new to coding in MQL4

I recently coded my first EA. After compiling many errors were returned due to syntax, that I managed to fix. However several errors still remain.

After searching the compilation errors, I am still left confused as to how they relate to the lines of code that have returned errors.

Any help in helping me understand/fixing this will be much appreciated.

Here are screenshots of the errors, as well as the code typed out. Thanks

//----------------------------------------------------------------------------------------------------------------------------
//Test system
#property strict
//----------------------------------------------------------------------------------------------------------------------------
int
Open_High=iHighest(NULL,PERIOD_D1,MODE_HIGH,20,1), //Assignining the value of the restuned shift to a varable to
Modify_Low=iLowest(NULL,PERIOD_D1,MODE_LOW,5,1), //be used in iHigh and iLow to determine the prices
Open_Low=iLowest(NULL,PERIOD_D1,MODE_LOW,20,1),
Modify_High=iHighest(NULL,PERIOD_D1,MODE_HIGH,5,1);

double
Buy_Price=iHigh(NULL,PERIOD_D1,Open_High), //Asssigning the price values to varables for order opening
Buy_Modify=iLow(NULL,PERIOD_D1,Modify_Low), //and modification
Sell_Price=iLow(NULL,PERIOD_D1,Open_Low),
Sell_Modify=iHigh(NULL,PERIOD_D1,Modify_High);

string CurrentSymbol=Symbol()

//---------------------------------------------------------------------------------------------------------------------------
int start()
{
{
if (CurrentSymbol!= //If symbol is not one of the following stop EA execution
(“EURUSD”,
“GBPUSD”,
“USDJPY”,
“USDCAD”,
“AUDUSD”,
“NZDUSD”,
“GBPJPY”,
“GBPAUD”,
“GBPNZD”,
“GBPCAD”,
“EURGBP”,
“EURJPY”,
“EURAUD”,
“EURNZD”,
“EURCAD”,
“CADJPY”,
“NZDJPY”,
“AUDJPY”)
)
return;
{
Alert(“Do not trade symbol”); //Inform trader about incorrect symbol and stop execution
}
}

double
Buy_Lot, //Variable to calculate the lot size of a buy
Sell_Lot; //Variable for the calculate size of a sell

for (CurrentSymbol) //Cycle operater to limit EA execution to current symbol
(
{
bool OrderSelect(ticket,SELECT_BY_TICKET); //Selecting order for further processing
if (OrderType()<1); //If order is a market order then continue

RefreshRates()

if(OrderType()==OP_BUY&&OrderStopLoss()<Buy_Modify) //If order is a buy and stop is less than the updated low
bool OrderModify(OrderTicket(),Buy_Modify); //Modify stop to updated low price

if(OrderType()==OP_SELL&&OrderStopLoss()>Sell_Modify) //If order is a sell and stop is greater than updated high
bool OrderModify(OrderTicket(),Sell_Modify); //Modify stop to updated high price
return;
}
{
bool OrderSelect(ticket,SELECT_BY_TICKET); //Selecting order for further processing
if(OrderType()>1); //If order is a pening order the continue

RefreshRates()

if(OrderType()==OP_BUYSTOP&&OrderOpenPrice!=Buy_Price) //If the current price of the buy stop is not equal to updated high
bool OrderDelete(OrderTicket()); //Delete the pending order

if(OrderType()==OP_SELLSTOP&&OrderOpenPrice!=Sell_Price) //If the current price of the sell stop is not equal to the updated low
bool OrderDelete(OrderTicket()); //Delete the pending order
return;
}
{
if (MarketInfo(Symbol(),MODE_ASK)>=Buy_Price) //If current symbols ask price is greater or equal to the calculated high
{
RefreshRates()

double Buy_Lot=AccountBalance()2,5/100/(Buy_ModifyMarketInfo(Symbol()MODE_TICKVALUE)); //Calculating lot size
int OrderSend(Symbol(),OP_BUYSTOP,Buy_Lot,Bid,10,Buy_Modify,0,NULL,0,0,clrNONE); //Place buy order
return;
}
}
(
if (MarketInfo(Symbol(),MODE_BID)<=Sell_Price) //If current symbols bid price is greater or equal to the calculated high
{
double Sell_Lot=AccountBalance()2,5/100/(Sell_Modify
MarketInfo(Symbol(),MODE_TICKVALUE)); //Calculating lot size
int OrderSend(Symbol(),OP_SELLSTOP,Sell_Lot,Ask,10,Sell_Modify,0,NULL,0,0,clrNONE); //Place sell order
return;
}
)
)
return()