코딩하는 방법? - 페이지 43 1...363738394041424344454647484950...347 새 코멘트 Flytox 2007.10.16 08:32 #421 jimven: Flytox: 내 TrendStrength 사본에서 그러한 코드를 찾을 수 없습니다. TrendStrength v2.2입니다. cochran1 2007.10.16 21:36 #422 사용자 정의 가격 모드 사용자 정의 pricemode를 만드는 방법을 아는 사람이 있습니까? 나는 가격(extern int PriceMode = 6; //(high+low+close+close)/4)이 MA를 교차할 때 신호를 보내기 위해 다음 경고를 사용하고 있습니다. 오프셋(예: 1 또는 2%)을 추가하여 이 사용자 지정을 만들고 싶습니다. 이게 가능해 ? 다음과 같은 것: extern int PriceMode = ((고가+저가+종가+종가)/4) * 1.01 -------------------------------------------------- -- #속성 표시기_차트_창 extern int MA1.period =5; //기간 5 외부 int MA1.shift=0; extern int MA1.method=2; //SMMA extern int lMA1.price=2; //MA 캔들 하이로 설정 extern int sMA1.price=3; //MA 캔들 로우로 설정 외부 정수 PriceMode = 6; //(고가+저가+종가+종가)/4 int cBar, pBarLong, pBarShort; 정수 시작() { cBar = 시간[0]; if( CheckMACross (1)== 1 && cBar!=pBarLong ) {EmailAlert(1); pBarLong=cBar;} 또 다른 if(CheckMACross(2)==-1 && cBar!=pBarShort) {EmailAlert(2); pBarShort=cBar;} 리턴(0); } int CheckMACross(int 모드) { if(모드==1) int 가격 = lMA1.price; 또 다른 if(모드==2) 가격 = sMA1.price; 두 배 가격1 = iMA(Symbol(),0,1,0,1,PriceMode,1); 이중 ma1 = iMA(Symbol(),0,MA1.period,MA1.shift,MA1.method, price,1); 두 배 price0 = iMA(Symbol(),0,1,0,1,PriceMode,0); 이중 ma0 = iMA(Symbol(),0,MA1.period,MA1.shift,MA1.method, price,0); if(ma1 > price1 && ma0 <= price0) return( 1); 또 다른 if(ma1 = price0) return(-1); 또 다른 리턴(0); } { if(mode == 1) SendMail("LONG에 대한 신호",Symbol()+" 길게 이동"); //메일을 보내다 또 다른 if(mode == 2) SendMail("SHORT에 대한 신호",Symbol()+" 짧게 이동");//SendMail } int lastBAlert = 0; 정수 lastSAlert = 0; 무효 EmailAlert(int 모드) { if(모드 == 2 && lastSAlert < 시간[0] ) { SendMail("짧게 1로 이동",Symbol()+"짧게 1로 이동"); //메일을 보내다 lastSAlert = 시간[0]; } } How to code? Email alert problem at Help - Add price wolfe 2007.10.17 01:04 #423 vonokpasah: 저를 위해 전문가 어드바이저 META 4 TRADER를 구축하는 데 도움이 필요합니다. 제 요청이 받아들여진다면 큰 도움이 될 것입니다. 전문가를 구축하는 수백만 가지 방법, 어떤 방식으로 생각하고 있었나요? agarwalsharma 2007.10.17 06:10 #424 소스 코드 도움말! 모두들 안녕 EA가 있고 여기에 입력을 추가하고 싶습니다. 이익을 취하는 경우 >= :xx , 매수 :xx 로트 extern int Deltaopen1 = 100; 나는 썼다; if (유형 == OP_BUY) { if (M2.BuyCnt == 0 && OrderTakeProfit() > OrderOpenPrice() + Deltaopen1*point) { Buy(Symbol(), GetLots2(), Ask, 0, 0, Magic2); 반품; } } if (유형 == OP_SELL) { if (M2.SellCnt == 0 && OrderTakeProfit() <= OrderOpenPrice() - Deltaopen1*point) { Sell(Symbol(), GetLots2(), Bid, 0, 0, Magic2); 반품; } } } 그러나 그것은 작동하지 않습니다, 도움을 주시면 감사하겠습니다. 고맙습니다 How to code? need some help with Exit Strategy: Stepping Stops RonaldRaygun 2007.10.17 21:56 #425 이 EA를 수정하는 데 약간의 도움이 필요합니다. 이 포럼의 다른 곳에서 볼 수 있는 "GAPS EA"의 수정된 버전인 이 ea가 있습니다. 어쨌든 코드 사본이 첨부되어 있습니다. #property link "" //---- input parameters extern int min_gapsize = 1; extern double lotsize_gap = 5; extern int MagicNumber = 10; //---- datetime order_time = 0; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { /* Thing to be done in future in this program to make it more efficient and more powerful: 1. Make the dicission of the quantity of lots used according to the scillators; 2. This program will catch the gaps. Things to ware of: 1. the spread; 2. excuting the order not on the gap ends a little bit less. */ // Defining the variables to decide. Print("order time", order_time); double current_openprice = iOpen(Symbol(), 0, 0); double previous_highprice = iHigh(Symbol(), 0, 1); double previous_lowprice = iLow(Symbol(), 0, 1); double point_gap = MarketInfo(Symbol(), MODE_POINT); int spread_gap = MarketInfo(Symbol(), MODE_SPREAD)+1; datetime current_time = iTime(Symbol(), 0, 0); // catching the gap on sell upper gap if(current_openprice > previous_highprice + (min_gapsize + spread_gap)*point_gap && current_time != order_time) { int ticket = OrderSend(Symbol(), OP_SELL, lotsize_gap, Bid, 0, 0, previous_highprice + spread_gap, "Gapped Up Sell " + Symbol()+ " " +Period()+ "", MagicNumber, 0, Red); order_time = iTime(Symbol(), 0, 0); Print("I am inside (sell) :-)", order_time); //---- if(ticket < 0) { Print("OrderSend failed with error #", GetLastError()); } } //catching the gap on buy down gap if(current_openprice < previous_lowprice - (min_gapsize + spread_gap)*point_gap && current_time != order_time) { ticket = OrderSend(Symbol(), OP_BUY, lotsize_gap, Ask, 0, 0, previous_lowprice - spread_gap, "Gapped Down Buy " + Symbol()+ " " +Period()+ "", MagicNumber, 0, Green); order_time = iTime(Symbol(), 0, 0); Print("I am inside (buy) :-)", order_time); if(ticket < 0) { Print("OrderSend failed with error #", GetLastError()); } } //---- return(0); } //+------------------------------------------------------------------+ 이것을 전략 테스터 에 넣을 때마다 거래가 열리지 않습니다. 저널을 살짝 들여다보면 주문 시간이 많이 소요되었다는 것을 알 수 있습니다. 내가 뭘 잘못했어? How to code? MQL4 Learning Please fix this indicator [삭제] 2007.10.19 05:24 #426 도움말: 기본 히스토그램 질문 이것은 아마도 정말 쉽고 과거를 찾고 있지만 리소스가 부족하고 답을 찾을 수 없습니다. 내가 하려고 하는 모든 것은 이전에 그려진 히스토그램 막대의 값을 기억하는 것입니다. 어떤 아이디어? 즉 Close[1]은 차트에서 마지막으로 닫힌 막대를 보여줍니다..... 그렇다면 이 별도의 창 표시기에 마지막으로 그려진 히스토그램 막대는 무엇으로 표시됩니까? 미리 조언해 주셔서 감사합니다. -다르산트 wolfe 2007.10.20 01:46 #427 dharsant: 이것은 아마도 정말 쉽고 과거를 찾고 있지만 리소스가 부족하고 답을 찾을 수 없습니다. 내가 하려고 하는 모든 것은 이전에 그려진 히스토그램 막대의 값을 기억하는 것입니다. 어떤 아이디어? 즉 Close[1]은 차트에서 마지막으로 닫힌 막대를 보여줍니다..... 그렇다면 이 별도의 창 표시기에 마지막으로 그려진 히스토그램 막대는 무엇으로 표시됩니까? 미리 조언해 주셔서 감사합니다. -다르산트 어떤 지표를 부르고 있습니까? 이전 막대를 호출하도록 시프트를 설정하기만 하면 됩니다. 예를 들어 현재 막대 이동 평균의 경우: iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,0); 이전 막대 이동 평균의 경우: iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,1); 표시기를 호출할 때 마지막 매개변수 는 현재에서 읽을 막대 수를 나타냅니다. 이것이 당신이 찾고 있던 것이기를 바랍니다. Beno 2007.10.21 16:46 #428 코딩 도움이 필요합니다 나는 EA에서 몇 가지 다른 지표를 사용하려고 노력하고 있지만 시스템에 구현하는 방법을 알아낼 수 없는 것 같습니다. 매수 또는 매도를 말할 때 지표의 어느 부분을 사용합니까? 경사 방향 선을 EA의 일부로 가져오려면 어떻게 합니까? 건배 베노 파일: slope_direction_line.mq4 5 kb Beno 2007.10.21 21:16 #429 나는 아마 나 자신을 제대로 설명하지 못했을 것이다. iCustom에 넣어야 할 것이 무엇인지 찾으려고 노력 중입니다. 이것이 제가 아래에서 한 일입니다. 이중 SDL=iCustom(NULL,0,"경사 방향선", 기간, 방법, 가격) 그리고 내 EA에 대한 경사 방향선 표시기에서 매수 및 매도 신호 를 생성하기 위해 수행해야 하는 작업. 아래는 지금까지 수행한 작업입니다. 컴파일되지만 위치가 생성되지 않습니다. bool Long = TML && SDL && HeikenAshiOpen < HeikenAshiClose && hasOpen < hasClose; bool Short = TMS && SDL && HeikenAshiOpen > HeikenAshiClose && hasOpen > hasClose; 어떤 도움이라도 좋을 것입니다 건배 베노 How to code? 원시 아이디어 StepMA_Stoch_v1 EA. 심플하면서도 만족스러운 ralphronnquist 2007.10.21 21:51 #430 먼저 iCustom 호출은 끝에 두 개의 추가 인수, 즉 읽을 표시기 버퍼 와 읽을 인덱스가 필요합니다. 둘째, "SDL"은 이중 숫자이므로 "SDL"을 조건으로 두는 것은 약간의 혼란을 나타냅니다. 아마도 "SDL != 0"으로 컴파일되며 아마도 이것이 의미하는 바입니다. 1...363738394041424344454647484950...347 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
Flytox: 내 TrendStrength 사본에서 그러한 코드를 찾을 수 없습니다.
TrendStrength v2.2입니다.
사용자 정의 가격 모드
사용자 정의 pricemode를 만드는 방법을 아는 사람이 있습니까? 나는 가격(extern int PriceMode = 6; //(high+low+close+close)/4)이 MA를 교차할 때 신호를 보내기 위해 다음 경고를 사용하고 있습니다. 오프셋(예: 1 또는 2%)을 추가하여 이 사용자 지정을 만들고 싶습니다. 이게 가능해 ? 다음과 같은 것:
extern int PriceMode = ((고가+저가+종가+종가)/4) * 1.01
-------------------------------------------------- --
#속성 표시기_차트_창
extern int MA1.period =5; //기간 5
외부 int MA1.shift=0;
extern int MA1.method=2; //SMMA
extern int lMA1.price=2; //MA 캔들 하이로 설정
extern int sMA1.price=3; //MA 캔들 로우로 설정
외부 정수 PriceMode = 6; //(고가+저가+종가+종가)/4
int cBar, pBarLong, pBarShort;
정수 시작()
{
cBar = 시간[0];
if( CheckMACross (1)== 1 && cBar!=pBarLong ) {EmailAlert(1); pBarLong=cBar;}
또 다른
if(CheckMACross(2)==-1 && cBar!=pBarShort) {EmailAlert(2); pBarShort=cBar;}
리턴(0);
}
int CheckMACross(int 모드)
{
if(모드==1) int 가격 = lMA1.price;
또 다른
if(모드==2) 가격 = sMA1.price;
두 배 가격1 = iMA(Symbol(),0,1,0,1,PriceMode,1);
이중 ma1 = iMA(Symbol(),0,MA1.period,MA1.shift,MA1.method, price,1);
두 배 price0 = iMA(Symbol(),0,1,0,1,PriceMode,0);
이중 ma0 = iMA(Symbol(),0,MA1.period,MA1.shift,MA1.method, price,0);
if(ma1 > price1 && ma0 <= price0) return( 1);
또 다른
if(ma1 = price0) return(-1);
또 다른
리턴(0);
}
{
if(mode == 1) SendMail("LONG에 대한 신호",Symbol()+" 길게 이동"); //메일을 보내다
또 다른
if(mode == 2) SendMail("SHORT에 대한 신호",Symbol()+" 짧게 이동");//SendMail
}
int lastBAlert = 0;
정수 lastSAlert = 0;
무효 EmailAlert(int 모드)
{
if(모드 == 2 && lastSAlert < 시간[0] )
{
SendMail("짧게 1로 이동",Symbol()+"짧게 1로 이동"); //메일을 보내다
lastSAlert = 시간[0];
}
}
저를 위해 전문가 어드바이저 META 4 TRADER를 구축하는 데 도움이 필요합니다. 제 요청이 받아들여진다면 큰 도움이 될 것입니다.
전문가를 구축하는 수백만 가지 방법, 어떤 방식으로 생각하고 있었나요?
소스 코드 도움말!
모두들 안녕
EA가 있고 여기에 입력을 추가하고 싶습니다.
이익을 취하는 경우 >= :xx , 매수 :xx 로트
extern int Deltaopen1 = 100;
나는 썼다;
if (유형 == OP_BUY)
{
if (M2.BuyCnt == 0 && OrderTakeProfit() > OrderOpenPrice() + Deltaopen1*point)
{
Buy(Symbol(), GetLots2(), Ask, 0, 0, Magic2);
반품;
}
}
if (유형 == OP_SELL)
{
if (M2.SellCnt == 0 && OrderTakeProfit() <= OrderOpenPrice() - Deltaopen1*point)
{
Sell(Symbol(), GetLots2(), Bid, 0, 0, Magic2);
반품;
}
}
}
그러나 그것은 작동하지 않습니다,
도움을 주시면 감사하겠습니다.
고맙습니다
이 EA를 수정하는 데 약간의 도움이 필요합니다.
이 포럼의 다른 곳에서 볼 수 있는 "GAPS EA"의 수정된 버전인 이 ea가 있습니다.
어쨌든 코드 사본이 첨부되어 있습니다.
#property link ""
//---- input parameters
extern int min_gapsize = 1;
extern double lotsize_gap = 5;
extern int MagicNumber = 10;
//----
datetime order_time = 0;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
/*
Thing to be done in future in this program to make it more efficient
and more powerful:
1. Make the dicission of the quantity of lots used according to
the scillators;
2. This program will catch the gaps.
Things to ware of:
1. the spread;
2. excuting the order not on the gap ends a little bit less.
*/
// Defining the variables to decide.
Print("order time", order_time);
double current_openprice = iOpen(Symbol(), 0, 0);
double previous_highprice = iHigh(Symbol(), 0, 1);
double previous_lowprice = iLow(Symbol(), 0, 1);
double point_gap = MarketInfo(Symbol(), MODE_POINT);
int spread_gap = MarketInfo(Symbol(), MODE_SPREAD)+1;
datetime current_time = iTime(Symbol(), 0, 0);
// catching the gap on sell upper gap
if(current_openprice > previous_highprice + (min_gapsize + spread_gap)*point_gap &&
current_time != order_time)
{
int ticket = OrderSend(Symbol(), OP_SELL, lotsize_gap, Bid, 0, 0,
previous_highprice + spread_gap,
"Gapped Up Sell " + Symbol()+ " " +Period()+ "", MagicNumber, 0, Red);
order_time = iTime(Symbol(), 0, 0);
Print("I am inside (sell) :-)", order_time);
//----
if(ticket < 0)
{
Print("OrderSend failed with error #", GetLastError());
}
}
//catching the gap on buy down gap
if(current_openprice < previous_lowprice - (min_gapsize + spread_gap)*point_gap &&
current_time != order_time)
{
ticket = OrderSend(Symbol(), OP_BUY, lotsize_gap, Ask, 0, 0,
previous_lowprice - spread_gap,
"Gapped Down Buy " + Symbol()+ " " +Period()+ "", MagicNumber, 0, Green);
order_time = iTime(Symbol(), 0, 0);
Print("I am inside (buy) :-)", order_time);
if(ticket < 0)
{
Print("OrderSend failed with error #", GetLastError());
}
}
//----
return(0);
}
//+------------------------------------------------------------------+이것을 전략 테스터 에 넣을 때마다 거래가 열리지 않습니다. 저널을 살짝 들여다보면 주문 시간이 많이 소요되었다는 것을 알 수 있습니다. 내가 뭘 잘못했어?
도움말: 기본 히스토그램 질문
이것은 아마도 정말 쉽고 과거를 찾고 있지만 리소스가 부족하고 답을 찾을 수 없습니다.
내가 하려고 하는 모든 것은 이전에 그려진 히스토그램 막대의 값을 기억하는 것입니다.
어떤 아이디어?
즉 Close[1]은 차트에서 마지막으로 닫힌 막대를 보여줍니다.....
그렇다면 이 별도의 창 표시기에 마지막으로 그려진 히스토그램 막대는 무엇으로 표시됩니까?
미리 조언해 주셔서 감사합니다.
-다르산트
이것은 아마도 정말 쉽고 과거를 찾고 있지만 리소스가 부족하고 답을 찾을 수 없습니다.
내가 하려고 하는 모든 것은 이전에 그려진 히스토그램 막대의 값을 기억하는 것입니다.
어떤 아이디어?
즉 Close[1]은 차트에서 마지막으로 닫힌 막대를 보여줍니다.....
그렇다면 이 별도의 창 표시기에 마지막으로 그려진 히스토그램 막대는 무엇으로 표시됩니까?
미리 조언해 주셔서 감사합니다.
-다르산트어떤 지표를 부르고 있습니까? 이전 막대를 호출하도록 시프트를 설정하기만 하면 됩니다.
예를 들어 현재 막대 이동 평균의 경우:
iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,0);
이전 막대 이동 평균의 경우:
iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,1);
표시기를 호출할 때 마지막 매개변수 는 현재에서 읽을 막대 수를 나타냅니다.
이것이 당신이 찾고 있던 것이기를 바랍니다.
코딩 도움이 필요합니다
나는 EA에서 몇 가지 다른 지표를 사용하려고 노력하고 있지만 시스템에 구현하는 방법을 알아낼 수 없는 것 같습니다. 매수 또는 매도를 말할 때 지표의 어느 부분을 사용합니까? 경사 방향 선을 EA의 일부로 가져오려면 어떻게 합니까?
건배
베노
나는 아마 나 자신을 제대로 설명하지 못했을 것이다.
iCustom에 넣어야 할 것이 무엇인지 찾으려고 노력 중입니다. 이것이 제가 아래에서 한 일입니다.
이중 SDL=iCustom(NULL,0,"경사 방향선", 기간, 방법, 가격)
그리고 내 EA에 대한 경사 방향선 표시기에서 매수 및 매도 신호 를 생성하기 위해 수행해야 하는 작업. 아래는 지금까지 수행한 작업입니다. 컴파일되지만 위치가 생성되지 않습니다.
bool Long = TML && SDL && HeikenAshiOpen < HeikenAshiClose && hasOpen < hasClose;
bool Short = TMS && SDL && HeikenAshiOpen > HeikenAshiClose && hasOpen > hasClose;
어떤 도움이라도 좋을 것입니다
건배
베노
먼저 iCustom 호출은 끝에 두 개의 추가 인수, 즉 읽을 표시기 버퍼 와 읽을 인덱스가 필요합니다.
둘째, "SDL"은 이중 숫자이므로 "SDL"을 조건으로 두는 것은 약간의 혼란을 나타냅니다. 아마도 "SDL != 0"으로 컴파일되며 아마도 이것이 의미하는 바입니다.