Помощь в кодировании - страница 491

 
brijeshsinh:
Здравствуйте,

mladen, mr tools не могли бы вы помочь изменить следующие настройки в индикаторе FXUltraTrend, размещенные ниже, на

--- показывать в отдельном окне в виде линии, (или гистограммы) со стрелками, чтобы показать изменение цвета, если это возможно (по умолчанию в текущих настройках он рисует бары на основном графике)

---- и, если возможно, добавить колонку для различных настроек, чтобы их можно было менять по нашему желанию. (в текущем режиме по умолчанию у него нет колонки для добавления настроек).

Прикрепляю ниже индикатор и его изображение для вас

fxultratrend.mq4

Надеюсь, вы не обидитесь, что я отнял у вас немного времени, но вы, ребята, делаете отличную работу для таких, как мы, новичков на этой платформе и не знающих программирования.

Вы действительно заслуживаете благодарности от меня и от всех членов этого форума за ваши ценные усилия.

спасибо за быстрый ответ на предыдущее сообщение.

Если у вас есть оригинальный (недекомпилированный) исходный код этого индикатора, опубликуйте его, чтобы кто-нибудь мог изменить его (я сомневаюсь, что кто-то будет изменять декомпилированный код).

 

у меня есть только этот индикатор, который я разместил.

Спасибо за ответ, Младен.

Приятно слышать вас снова.

 
tfi_markets:
Привет, Младен,

Вы правы, пожалуйста, найдите код ниже, который вызывает "OpenSell()".

//+------------------------------------------------------------------+

//| OPEN BUY / OPEN SELL

//+------------------------------------------------------------------+

//----------------------- BUY CONDITION

for(i=OrdersTotal()-1;i>=0; i--)

if(OrderType()==OP_SELL) break;

{

if(STC1!=STC2)

{

/*if(STC1STC1)BUY="true";*/

if(STC1STC1)

/*if((STC115) || (STC185)) // code for buy */

OpenBuy();

return(0);

}

openedOrders++;

}

//----------------------- SELL CONDITION

// if(STC1>STC0&&STC2<STC1)SELL="true";

//if((STC1>15 && STC285 && STC2<85)) // code for sell

if(STC1>STC0&&STC2<STC1) // code for sell

{

OpenSell();

return(0);

}

}

//----------------------- OPEN SELL

void OpenSell()

{

double lsStop = 0; if(sStopLoss>0) lsStop = NormalizeDouble(MarketInfo(s_symbol,MODE_BID)+sStopLoss *pPoint*pipMultiplier,digit);

double lsTake = 0; if(sTakeProfit>0) lsTake = NormalizeDouble(MarketInfo(s_symbol,MODE_BID)-sTakeProfit*pPoint*pipMultiplier,digit);

if(AccountFreeMargin()<(100*Lots)) { Print("We have no money. Free Margin = ",AccountFreeMargin()); return; }

// ECN

if(!EcnBroker)

dummyResult=OrderSend(s_symbol,OP_SELL,LotsOptimized(),MarketInfo(s_symbol,MODE_BID),Slippage*pipMultiplier,lsStop,lsTake,ExpertName,MAGIC,0,clOpenSell);

else

{

int sellTicket = OrderSend(s_symbol,OP_SELL,LotsOptimized(),MarketInfo(s_symbol,MODE_BID),Slippage*pipMultiplier,0,0,ExpertName,MAGIC,0,clOpenSell);

if(sellTicket >= 0)

bool sellOrderMod=OrderModify(sellTicket,OrderOpenPrice(),lsStop,lsTake,0,CLR_NONE);

if(sellOrderMod==false)

{

int ErrorCode = GetLastError();

string ErrDesc = ErrorDescription(ErrorCode);

string ErrAlert=StringConcatenate("Modify Sell Order - Error ",ErrorCode,": ",ErrDesc);

if(ShowAlerts==true) Alert(ErrAlert);

string ErrLog=StringConcatenate("Ask: ",MarketInfo(s_symbol,MODE_ASK)," Bid: ",MarketInfo(s_symbol,MODE_BID)," Ticket: ",sellTicket," Stop: ",lsStop," Profit: ",lsTake);

Print(ErrLog);

}

}

}

Проверьте, какие ошибки вы получаете на вкладке эксперты или журналы в терминале

 
mladen:
Проверьте, какие ошибки вы получаете на вкладке экспертов или журналов в терминале

Никаких реальных ошибок нет, именно это и вызывает у меня недоумение.

Это выглядит следующим образом:

2015.06.17 17:20:26.823 2014.07.29 17:10 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #3 buy 0.10 EURUSD at 1.34175 ok

2015.06.17 17:20:26.799 2014.07.29 17:05 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 17:05:00 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.792 2014.07.29 17:03 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 17:03:13 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.714 2014.07.29 16:40 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 16:40:00 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.064 2014.07.29 14:06 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 14:06:09 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:25.827 2014.07.29 11:55 SchaffTrendCircle_EA v1.3 EURUSD,M5: close #2 buy 0.10 EURUSD at 1.34353 sl: 1.27353 tp: 1.74353 at price 1.34356

2015.06.17 17:20:25.818 2014.07.29 11:50 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 11:50:01 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.816 2014.07.29 11:48 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 11:48:17 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.486 2014.07.29 09:15 SchaffTrendCircle_EA v1.3 EURUSD,M5: modify #2 buy 0.10 EURUSD at 1.34353 sl: 1.27353 tp: 1.74353 ok

2015.06.17 17:20:25.486 2014.07.29 09:15 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #2 buy 0.10 EURUSD at 1.34353 ok

2015.06.17 17:20:25.479 2014.07.29 09:12 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 09:12:11 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:25.426 2014.07.29 08:45 SchaffTrendCircle_EA v1.3 EURUSD,M5: close #1 buy 0.10 EURUSD at 1.34345 sl: 1.27345 tp: 1.74345 at price 1.34277

2015.06.17 17:20:25.421 2014.07.29 08:42 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 08:42:19 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.378 2014.07.29 08:05 SchaffTrendCircle_EA v1.3 EURUSD,M5: modify #1 buy 0.10 EURUSD at 1.34345 sl: 1.27345 tp: 1.74345 ok

2015.06.17 17:20:25.378 2014.07.29 08:05 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #1 buy 0.10 EURUSD at 1.34345 ok

[/CODE]

I guess the problem may lie somewhere in there:

[CODE]

//----------------------- CLOSE BUY CONDITION

.

.

.

string ErrLog=StringConcatenate("Bid: ",MarketInfo(s_symbol,MODE_BID)," Lots: ",OrderLots()," Ticket: ",OrderTicket());

Print(ErrLog);

}

break;

} // mod.... maybe here.

}

}

//----------------------- CLOSE SELL CONDITION

.

.

.

ErrLog=StringConcatenate("Ask: ",MarketInfo(s_symbol,MODE_ASK)," Lots: ",OrderLots()," Ticket: ",OrderTicket());

Print(ErrLog);

}

break;

} // mod ----- maybe here.

}

}

}

}

 
tfi_markets:
Реальных ошибок нет, именно это и вызывает у меня недоумение.

Это выглядит следующим образом:

2015.06.17 17:20:26.823 2014.07.29 17:10 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #3 buy 0.10 EURUSD at 1.34175 ok

2015.06.17 17:20:26.799 2014.07.29 17:05 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 17:05:00 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.792 2014.07.29 17:03 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 17:03:13 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.714 2014.07.29 16:40 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 16:40:00 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:26.064 2014.07.29 14:06 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 14:06:09 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:25.827 2014.07.29 11:55 SchaffTrendCircle_EA v1.3 EURUSD,M5: close #2 buy 0.10 EURUSD at 1.34353 sl: 1.27353 tp: 1.74353 at price 1.34356

2015.06.17 17:20:25.818 2014.07.29 11:50 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 11:50:01 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.816 2014.07.29 11:48 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 11:48:17 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.486 2014.07.29 09:15 SchaffTrendCircle_EA v1.3 EURUSD,M5: modify #2 buy 0.10 EURUSD at 1.34353 sl: 1.27353 tp: 1.74353 ok

2015.06.17 17:20:25.486 2014.07.29 09:15 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #2 buy 0.10 EURUSD at 1.34353 ok

2015.06.17 17:20:25.479 2014.07.29 09:12 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 09:12:11 Non Lag Schaff Trend Cycle changed direction to up

2015.06.17 17:20:25.426 2014.07.29 08:45 SchaffTrendCircle_EA v1.3 EURUSD,M5: close #1 buy 0.10 EURUSD at 1.34345 sl: 1.27345 tp: 1.74345 at price 1.34277

2015.06.17 17:20:25.421 2014.07.29 08:42 NonLag_Schaff_TrendCycle EURUSD,M5: Alert: EURUSD M5 at 08:42:19 Non Lag Schaff Trend Cycle changed direction to down

2015.06.17 17:20:25.378 2014.07.29 08:05 SchaffTrendCircle_EA v1.3 EURUSD,M5: modify #1 buy 0.10 EURUSD at 1.34345 sl: 1.27345 tp: 1.74345 ok

2015.06.17 17:20:25.378 2014.07.29 08:05 SchaffTrendCircle_EA v1.3 EURUSD,M5: open #1 buy 0.10 EURUSD at 1.34345 ok

[/CODE]

I guess the problem may lie somewhere in there:

[CODE]

//----------------------- CLOSE BUY CONDITION

.

.

.

string ErrLog=StringConcatenate("Bid: ",MarketInfo(s_symbol,MODE_BID)," Lots: ",OrderLots()," Ticket: ",OrderTicket());

Print(ErrLog);

}

break;

} // mod.... maybe here.

}

}

//----------------------- CLOSE SELL CONDITION

.

.

.

ErrLog=StringConcatenate("Ask: ",MarketInfo(s_symbol,MODE_ASK)," Lots: ",OrderLots()," Ticket: ",OrderTicket());

Print(ErrLog);

}

break;

} // mod ----- maybe here.

}

}

}

}

Это означает, что условия для входа в процедуру открытия ордера никогда не выполняются. Проверьте условия в этом случае.

 

Здравствуйте, мастера

подскажите, пожалуйста, как добавить живую котировку в оповещение.

спасибо

 
AAREMM:
Здравствуйте, мастера

подскажите, пожалуйста, как добавить живую котировку в сообщение об оповещении.

спасибо

Просто добавьте что-то вроде DoubleToStr(price,_Digits) к сообщению об оповещении.

 
mladen:
Просто добавьте что-то вроде DoubleToStr(price,_Digits) к сообщению об оповещении

HaHaHa

пытался, но безуспешно

rsi_bollinger_bands_1.01_amp_lines__alerts_arrows.mq4

пожалуйста, добавьте к этому, чтобы я мог попробовать снова

ошибка в том, что 'price' - необъявленный идентификатор.

спасибо за внимание

 
AAREMM:
HaHaHa

пытался, но безуспешно

rsi_bollinger_bands_1.01_amp_lines__alerts_arrows.mq4

пожалуйста, добавьте к этому, чтобы я мог попробовать снова

ошибка заключается в следующем 'price' - undeclared identifier

спасибо за внимание

"price" был помещен туда, чтобы вы могли заменить его на цену (или значение), которую вы хотите использовать вместо цены. Используйте "Close[0]", "Ask", "Bid" или любую другую цену (значение), которую вы хотите отобразить в оповещении.

 
mladen:
"price" был помещен туда, чтобы вы могли заменить его на цену (или значение), которую вы хотите использовать вместо цены. Используйте "Close[0]", "Ask", "Bid" или любую другую цену (значение), которую вы хотите отобразить в оповещении.

Хорошо, сэр, попробую еще раз.

Еще раз спасибо, что направили меня.

Я сделал это, спасибо большое, сэр Младен.