extern double SL=20; // SL для открываемого ордера extern double TP=20; // ТР для открываемого ордера extern double Lot=0.01; // Жестко заданное колич. лотов datetime time; //--------------------------------------------------------------- 2 -- int start() { int Total;
double M_0, M_1;
bool Ans =false, // Ответ сервера после закрытия Cls_B=false, // Критерий для закрытия Buy Cls_S=false, // Критерий для закрытия Sell Opn_B=false, // Критерий для открытия Buy Opn_S=false; // Критерий для открытия Sell
extern double TP=20; // ТР для открываемого ордера
extern double Lot=0.01; // Жестко заданное колич. лотов
datetime time;
//--------------------------------------------------------------- 2 --
int start()
{
int Total;
double
M_0,
M_1;
bool
Ans =false, // Ответ сервера после закрытия
Cls_B=false, // Критерий для закрытия Buy
Cls_S=false, // Критерий для закрытия Sell
Opn_B=false, // Критерий для открытия Buy
Opn_S=false; // Критерий для открытия Sell
//--------------------------------------------------------------- 3 --
// Учёт ордеров
for(int i=OrdersTotal()-1;i>=0;i--)
if (OrderSelect(i,SELECT_BY_POS)&&OrderSymbol()==Symbol()&&OrderType()>1)Total++;
if(Total!=0 || time==Time[1])return;
// Торговые критерии
M_0=iOsMA(NULL,0,13,34,8,0,0); // 0 бар
M_1=iOsMA(NULL,0,13,34,8,0,1); // 1 бар
if (M_1<0 && M_0>0)
Opn_B=true;
if (M_1>0 && M_0<0)
Opn_S=true;
//--------------------------------------------------------------- 7 --
if (Opn_B)
{OrderSend(Symbol(),OP_BUY,Lot,Ask,0,Bid-SL*Point,Bid+TP*Point);time=Time[1];}
if (Opn_S)
{OrderSend(Symbol(),OP_SELL,Lot,Bid,0,Ask+SL*Point,Ask-TP*Point);time=Time[1];}
}
모든 진드기에 대해 테스트합니까?
답변 해주셔서 감사합니다. 간단한 고문을 스케치했습니다. 여전히 작동하지 않습니다.
이 코드에서 오류를 살펴 보고 F1 키를 누르면 표준 편집기에서 도움말을 호출하고 입력 매개변수의 순서를 보면 오류가 있습니다.
+ 변수 값을 보기 위해 Print/Alert 기능을 사용하고 ( 할당 / 실행 ) 뒤에 코드 섹션에 삽입
출력에 대한 정규화 DoubletoSt..NormalizeDouble..TimeToStr에 대해 기억하십시오.
첨부 파일에 코드가 있는 라이브러리 2개의 자유가 있습니다. by kimIV
코드는 간단하고 기성품이며 초보자에게 적합합니다.
// 하드 코딩된 숫자 많이 :)
예
그런 다음 제로 바에 바운스가 있습니다.
모든 진드기에 대해 테스트합니까?
DC의 불만의 흐름을 "중단"하는 방법은 무엇입니까?
아래는 저널에서 발췌한 내용입니다.
10:00:25 오래된 틱 EURUSD30 1.38730/1.38740
10:00:25 오래된 틱 EURUSD240 1.38730/1.38740
10:00:25 오래된 틱 EURUSD1440 1.38730/1.38740
10:00:25 오래된 틱 EURUSD15 1.38730/1.38740
10:00:25 오래된 틱 EURUSD1 1.38730/1.38740
10:00:25 오래된 틱 EURUSD60 1.38730/1.38740
10:00:25 오래된 틱 EURUSD5 1.38730/1.38740
11:00:34 오래된 틱 EURUSD30 1.38847/1.38863
11:00:34 오래된 틱 EURUSD240 1.38847/1.38863
11:00:34 오래된 틱 EURUSD1440 1.38847/1.38863
11:00:34 오래된 틱 EURUSD15 1.38847/1.38863
11:00:34 오래된 틱 EURUSD1 1.38847/1.38863
11:00:34 오래된 틱 EURUSD60 1.38847/1.38863
11:00:34 오래된 틱 EURUSD5 1.38847/1.38863
11:25:06 올드틱 EURUSD30 1.38707/1.38722
11:25:06 올드틱 EURUSD240 1.38707/1.38722
11:25:06 올드틱 EURUSD1440 1.38707/1.38722
11:25:06 올드 틱 EURUSD15 1.38707/1.38722
11:25:06 오래된 틱 EURUSD1 1.38707/1.38722
11:25:06 올드틱 EURUSD60 1.38707/1.38722
그런 다음 제로 바에 바운스가 있습니다.
테스트하는 동안 머리가 아프나요?
// 거래 기준
M_0 ={iOsMA(0,0,13,34,8,0,1) }; //| 1바
M_1 ={iOsMA(0,0,13,34,8,0,2) }; //| 2바
Opn_B ={ (((M_1<0)==1) &&((M_0>0)==1) ) };
Opn_S ={ (((M_1>0)==1) &&((M_0<0)==1) ) };
지연되지만 잡담 없이 이렇게 시도하십시오. :)