Помогите написать код. Когда появляются фракталы Sell1 и Sell2 открывалась сделка на buy.
Один шаг сделан, добавьте код открытия ордеров и вместо цены вставьте переменную фрактала
double Sell1=iFractals(Symbol1,240,MODE_UPPER,2); double Sell2=iFractals(Symbol2,240,MODE_UPPER,2); double price1 = MarketInfo ( Symbol1, нужная цена (Бид иди Аск); double price2 = MarketInfo (Symbol2, цена); if (Sell1>0 && Sell2>0) {OrderSend(Symbol1,...); OrderSend(Symbol2,...}
int start() { double Sell1=iFractals(Symbol1,240,MODE_UPPER,2); double Sell2=iFractals(Symbol2,240,MODE_UPPER,2); double price1 = MarketInfo ( Symbol1, MODE_BID); double price2 = MarketInfo (Symbol2, MODE_BID); if (Sell1>0 && Sell2>0) {OrderSend(Symbol1,OP_SELL,Lot,Bid,Slippage,NormalizeDouble(Ask+StopLoss*Point,Digits),NormalizeDouble(Bid-TakeProfit*Point,Digits),NULL,Magic,0,clrRed);} return(0); }Что то не открывается
Что то не открывается
Slippage не определен,Вместо Bid подствьте price1 и price2, Magic не определен.
Посмотрите журнал. Там все отмечено. Воспользуйтесь переводчиком, если не понятно, что написано.
Slippage не определен,Вместо Bid подствьте price1 и price2, Magic не определен.
Посмотрите журнал. Там все отмечено. Воспользуйтесь переводчиком, если не понятно, что написано.
extern double Lot = 1.0; // открываемый лот extern int TakeProfit = 15; extern int Slippage = 2; // проскальзывание extern int Magic = 2400089; extern int StopLoss = 50; extern string Symbol1= "EURUSD"; extern string Symbol2= "GBRUSD"; //------------------------------- //+------------------------------------------------------------------+ //---------------------------------+ int start() { double Sell1=iFractals(Symbol1,240,MODE_UPPER,2); double Sell2=iFractals(Symbol2,240,MODE_UPPER,2); double price1 = MarketInfo ( Symbol1, MODE_BID); double price2 = MarketInfo (Symbol2, MODE_BID); if (Sell1>0 && Sell2>0) {OrderSend(Symbol1,OP_SELL,Lot,price1,Slippage,0,NormalizeDouble(price1-TakeProfit*Point,Digits),NULL,Magic,0,clrRed);} return(0); }Что то не так.
Что то не так.
Вам для открытия второго ордера нужен второй OrderSend только место Symbol1 поставьте Symbol2
В начале вы вроде хотели открывать ордера Buy, а у вас стоит OP_SELL
При пересечении MODE_BID открываются отложки и ордера типа OP_BUY ордера типа OP_SELL на bid могут не сработать и не открыться. По этому для OP_SELL нужно установить цену от MODE_ASK
Вам для открытия второго ордера нужен второй OrderSend только место Symbol1 поставьте Symbol2
В начале вы вроде хотели открывать ордера Buy, а у вас стоит OP_SELL
При пересечении MODE_BID открываются отложки и ордера типа OP_BUY ордера типа OP_SELL на bid могут не сработать и не открыться. По этому для OP_SELL нужно установить цену от MODE_ASK
Все исправил но сделки не открываются.
Смотрите критерий условия открытия
if (Sell1>0 && Sell2>0) double Sell1=iFractals(Symbol1,240,MODE_UPPER,2); double Sell2=iFractals(Symbol2,240,MODE_UPPER,2);
По условию ордера должны открываться, когда два сигнала фрактала больше 0, возможно нет сигнала, нужно настроить и убедится, что оба сигнала есть.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования