Судя по линии в подвале, стрелки должны появляться при пересечении нулевой линии в обе стороны
if(ExtBuffer0[j+SIGNAL_BAR+1] > 0.0 && ExtBuffer0[j+SIGNAL_BAR] < 0.0
&& iRSI(Symbol(),PERIOD_CURRENT,3,PRICE_CLOSE,0) >80
&& iMA(Symbol(),PERIOD_CURRENT,9,0,MODE_EMA,PRICE_CLOSE,0) > iMA(Symbol(),PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,0)
)
manageArr(j+1, clArrowBuy, 233, false);
if(ExtBuffer0[j+SIGNAL_BAR+1] < 0.0 && ExtBuffer0[j+SIGNAL_BAR] > 0.0
&& iRSI(Symbol(),PERIOD_CURRENT,3,PRICE_CLOSE,0) <20
&& iMA(Symbol(),PERIOD_CURRENT,9,0,MODE_EMA,PRICE_CLOSE,0) < iMA(Symbol(),PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,0)
)
manageArr(j+1, clArrowSell, 234, true);
[
[
1499040000000, // Время открытия
"0.01634790", // Цена открытия (Open)
"0.80000000", // Максимальная цена (High)
"0.01575800", // Минимальная цена (Low)
"0.01577100", // Цена закрытия (Close)
"148976.11427815", // Объем
1499644799999, // Время закрытия
"2434.19055334", // Объем квотируемой валюты
308, // Кол-во сделок
"1756.87402397", // Taker buy base asset volume
"28.46694368", // Taker buy quote asset volume
"17928899.62484339" // Ignore
]
]
[[1648512000000,"430.20000000","441.60000000","429.40000000","436.40000000","524281.23900000",1648598399999,"228505987.85730000",305509,"266196.49500000","116057396.41620000","0"]]
[[1605398400000,"27.93590000","28.23320000","27.07000000","27.67860000","1442022.54800000",1605484799999,"40116215.60901730",146356,"673956.42300000","18754846.24276470","0"],[1605484800000,"27.68220000","28.22020000","27.44610000","27.94510000","16853...<\code>
Цель — использование индикатора в советникепишите сразу тз на советник. сделаю по вашему индикатору
https://www.api.binance.com/api/v3/ticker/openPrice?symbol=BNBUSDT
//+------------------------------------------------------------------+
//| Binance.mq5 |
//| Copyright 2022, AM2 |
//| https://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2022, AM2"
#property link "https://www.forexsystems.biz"
#property version "1.00"
#include <Trade\Trade.mqh> // Подключаем торговый класс CTrade
CTrade trade;
input string url="https://www.api.binance.com/api/v3/ticker/price?symbol=BNBUSDT";
input double lot=1; // лот
input double cef=2; // кэф
input double pro=10; // профит
input string s1="EURUSD";
input string s2="USDJPY";
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//---
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void CloseAll()
{
for(int i=PositionsTotal()-1; i>=0; i--)
{
if(PositionSelectByTicket(PositionGetTicket(i)))
{
trade.PositionClose(PositionGetTicket(i));
}
}
}
//+------------------------------------------------------------------+
//| Position Profit |
//+------------------------------------------------------------------+
double AllProfit()
{
double p=0;
for(int i=PositionsTotal()-1; i>=0; i--)
{
if(PositionSelectByTicket(PositionGetTicket(i)))
p+=PositionGetDouble(POSITION_PROFIT);
}
return(p);
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
string header;
char post[],result[];
int res;
//--- для работы с сервером необходимо добавить URL "https://www.google.com/finance"
//--- в список разрешенных URL (Главное меню->Сервис->Настройки, вкладка "Советники"):
//--- обнуляем код последней ошибки
ResetLastError();
//--- загрузка html-страницы с Google Finance
int timeout=5000; //--- timeout менее 1000 (1 сек.) недостаточен при низкой скорости Интернета
res=WebRequest("GET",url,NULL,NULL,30000,post,0,result,header);
double bid1=SymbolInfoDouble(s1,SYMBOL_BID);
double bid2=SymbolInfoDouble(s2,SYMBOL_BID);
double ask1=SymbolInfoDouble(s1,SYMBOL_ASK);
double ask2=SymbolInfoDouble(s2,SYMBOL_ASK);
double op1=iOpen(s1,PERIOD_D1,0);
double op2=iOpen(s2,PERIOD_D1,0);
double delta1=(op1-bid1)/_Point;
double delta2=(op2-bid2)/_Point;
double delta=MathAbs(delta1-delta2);
if(AllProfit()>pro && pro>0) CloseAll();
if(delta>cef && PositionsTotal()<1)
{
if(delta1<0)
{
trade.Buy(lot,s1,ask1,0,0,"");
trade.Sell(lot,s2,bid2,0,0,"");
}
if(delta1>0)
{
trade.Buy(lot,s2,ask2,0,0,"");
trade.Sell(lot,s1,bid1,0,0,"");
}
}
Comment("\n Symbol: ",CharArrayToString(result,0,333),
"\n Profit: ",AllProfit(),
"\n Delta1: ",delta1,
"\n Delta2: ",delta2,
"\n Delta: ",delta);
}
//+------------------------------------------------------------------+
нарисовал стрелку вниз икак я это объясню машине?
эта стрелка уже не первая
AM2