나는 간단한 스크립트를 작성했습니다 (보도 릴리스 전에 차트에 던지기 위해 시장에 가까운 양방향으로 두 개의 보류 주문을 설치하여 수동으로 소란을 피우지 않도록) 훨씬 쉬워 보이지만 작동하지 않습니다 , 주문을 열지 않으며 로그에 스크립트가 성공적으로 로드된 다음 같은 순간에 즉시 제거되었다고 기록합니다! 오류 없이 컴파일됩니다. 나는 그것을 전문가 형식으로 변환했습니다. 테스터를 확인하기 위해 init 및 deinit를 추가하면 작동했습니다. 하지만 아시다시피 저는 전문가가 아니라 스크립트가 필요합니다.
외부 정수 SL = 15; 외부 정수 TP = 90; 외부 정수 델타 = 15; 외부 이중 LOT = 0.1; 외부 int SLIP = 3;
//+----------------------------------------------- --------------------+ //| 스크립트 프로그램 시작 기능 | //+----------------------------------------------- --------------------+ 정수 시작() { //---- 이중 BUYPRICE = 묻기 + DELTA*포인트; 이중 SELLPRICE = 입찰가 - DELTA*포인트; 정수 OPEN_ORDER;
나는 간단한 스크립트를 작성했습니다 (보도 릴리스 전에 차트에 던지기 위해 시장에 가까운 양방향으로 두 개의 보류 주문을 설치하여 수동으로 소란을 피우지 않도록) 훨씬 쉬워 보이지만 작동하지 않습니다 , 주문을 열지 않으며 로그에 스크립트가 성공적으로 로드된 다음 같은 순간에 즉시 제거되었다고 기록합니다! 오류 없이 컴파일됩니다. 나는 그것을 전문가 형식으로 변환했습니다. 테스터를 체크인하기 위해 init 및 deinit를 추가하면 작동했습니다. 하지만 아시다시피 저는 전문가가 아니라 스크립트가 필요합니다.
여기서 무슨 문제가 있습니까? 미리 감사드립니다.
다음은 스크립트 코드입니다.
확인했습니다. 스크립트가 작동 중입니다.
만일을 대비하여 오류 인쇄를 인쇄하십시오:
int start()
{
//----double BUYPRICE = Ask + DELTA* Point ;
double SELLPRICE = Bid - DELTA* Point ;
int TicketBS,TicketSS;
TicketBS= OrderSend ( Symbol (),OP_BUYSTOP,LOT,BUYPRICE,SLIP,BUYPRICE-SL* Point ,BUYPRICE+TP* Point , NULL , 0 , 0 , Blue );
TicketSS= OrderSend ( Symbol (),OP_SELLSTOP,LOT,SELLPRICE,SLIP,SELLPRICE+SL* Point ,SELLPRICE-TP* Point , NULL , 0 , 0 , Red );
if (TicketBS<= 0 || TicketSS<= 0 ) Print ( "Error = " , GetLastError ());
//----return ( 0 );
}
나는 간단한 스크립트를 작성했습니다 (보도 릴리스 전에 차트에 던지기 위해 시장에 가까운 양방향으로 두 개의 보류 주문을 설치하여 수동으로 소란을 피우지 않도록) 훨씬 쉬워 보이지만 작동하지 않습니다 , 주문을 열지 않으며 로그에 스크립트가 성공적으로 로드된 다음 같은 순간에 즉시 제거되었다고 기록합니다! 오류 없이 컴파일됩니다. 나는 그것을 전문가 형식으로 변환했습니다. 테스터를 체크인하기 위해 init 및 deinit를 추가하면 작동했습니다. 하지만 아시다시피 저는 전문가가 아니라 스크립트가 필요합니다.
여기서 무슨 문제가 있습니까? 미리 감사드립니다.
4 자리에서 작동합니다. 5-sign에서는 확인하지 않았지만 StopLevel 수준에 대한 제한 사항에 대한 확인을 추가했습니다.
//+------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------+externint SL = 15 ;
externint TP = 90 ;
externint DELTA = 15 ;
externdouble LOT = 0.1 ;
externint SLIP = 3 ;
//+------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------+int start()
{
//----int StopLevel = MarketInfo( Symbol (),MODE_STOPLEVEL);
if (DELTA <= StopLevel) DELTA = StopLevel+ 1 ;
double BUYPRICE = Ask + DELTA* Point ;
double SELLPRICE = Bid - DELTA* Point ;
int OPEN_ORDER;
OPEN_ORDER= OrderSend ( Symbol (),OP_BUYSTOP,LOT,BUYPRICE,SLIP,BUYPRICE-SL* Point ,BUYPRICE+TP* Point , NULL , 0 , 0 , Blue );
OPEN_ORDER= OrderSend ( Symbol (),OP_SELLSTOP,LOT,SELLPRICE,SLIP,SELLPRICE+SL* Point ,SELLPRICE-TP* Point , NULL , 0 , 0 , Red );
//----return ( 0 );
}
//+------------------------------------------------------------------+
원칙적으로 실수를 방지하기 위해 4자리 또는 5자리의 포인트 조정을 할 수 있습니다. Delta 레벨은 5자리에서 10배 더 높아야 하기 때문에, 즉. 15가 아니라 150이고 각각 테이크에서 멈춥니다...
그러면 다음과 같이 보일 것입니다.
//+------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------+externint SL = 15 ;
externint TP = 90 ;
externint DELTA = 15 ;
externdouble LOT = 0.1 ;
externint SLIP = 3 ;
//+------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------+int start()
{
//----double PointX;
if ( Digits == 5 || Digits == 3 ) PointX = Point * 10 ; // Корректировка Point под трёх- пятизнакif ( Digits == 4 || Digits == 2 ) PointX = Point ;
int StopLevel = MarketInfo( Symbol (),MODE_STOPLEVEL);
if (DELTA <= StopLevel) DELTA = StopLevel+ 1 ;
double BUYPRICE = Ask + DELTA*PointX;
double SELLPRICE = Bid - DELTA*PointX;
int OPEN_ORDER;
OPEN_ORDER= OrderSend ( Symbol (),OP_BUYSTOP,LOT,BUYPRICE,SLIP,BUYPRICE-SL*PointX,BUYPRICE+TP*PointX, NULL , 0 , 0 , Blue );
OPEN_ORDER= OrderSend ( Symbol (),OP_SELLSTOP,LOT,SELLPRICE,SLIP,SELLPRICE+SL*PointX,SELLPRICE-TP*PointX, NULL , 0 , 0 , Red );
//----return ( 0 );
}
//+------------------------------------------------------------------+
말해봐, 제발, 무슨 일이야? 나는 고문을 GBPUSD 테스터에 넣었습니다. 모든 것이 예상대로 거래를 엽니다. 나는 그것을 DXH1 달러 인덱스에 넣었습니다 - 그것은 많은 거래를 열지 않습니다 : 오류 "130" - 잘못된 중지. 또한, 무엇이 잘못되었는지 명확하지 않습니다. 비슷한 상황에서 열리면 열리지 않지만 그렇지 않은 경우가 더 많습니다. 달러 인덱스 -100 및 200에 대한 스프레드 및 스탑 레벨. GBPUSD -3 및 4에 대한 스프레드 및 스탑 레벨. 달러 인덱스의 가격(예: 78,150 쌍) - 소수점 이하 4자리. 하지만 중요하다
모든 것이 여기에 있었습니다 C:\Users\======\AppData\Local\VirtualStore\Program Files\====== - MetaTrader\
추억
말해 주세요.
나는 간단한 스크립트를 작성했습니다 (보도 릴리스 전에 차트에 던지기 위해 시장에 가까운 양방향으로 두 개의 보류 주문을 설치하여 수동으로 소란을 피우지 않도록) 훨씬 쉬워 보이지만 작동하지 않습니다 , 주문을 열지 않으며 로그에 스크립트가 성공적으로 로드된 다음 같은 순간에 즉시 제거되었다고 기록합니다! 오류 없이 컴파일됩니다. 나는 그것을 전문가 형식으로 변환했습니다. 테스터를 확인하기 위해 init 및 deinit를 추가하면 작동했습니다. 하지만 아시다시피 저는 전문가가 아니라 스크립트가 필요합니다.
여기서 무슨 문제가 있습니까? 미리 감사드립니다.
다음은 스크립트 코드입니다.
#재산권 "alexey15"
#속성 링크 ""
#프로퍼티쇼_확인
외부 정수 SL = 15;
외부 정수 TP = 90;
외부 정수 델타 = 15;
외부 이중 LOT = 0.1;
외부 int SLIP = 3;
//+----------------------------------------------- --------------------+
//| 스크립트 프로그램 시작 기능 |
//+----------------------------------------------- --------------------+
정수 시작()
{
//----
이중 BUYPRICE = 묻기 + DELTA*포인트;
이중 SELLPRICE = 입찰가 - DELTA*포인트;
정수 OPEN_ORDER;
OPEN_ORDER=OrderSend(Symbol(),OP_BUYSTOP,LOT,BUYPRICE,SLIP,BUYPRICE-SL*포인트,BUYPRICE+TP*포인트,NULL,0,0,파란색);
OPEN_ORDER=OrderSend(Symbol(),OP_SELLSTOP,LOT,SELLPRICE,SLIP,SELLPRICE+SL*포인트,SELLPRICE-TP*포인트,NULL,0,0,레드);
//----
반환(0);
}
//+----------------------------------------------- --------------------+
안녕하세요. 도와주세요, 제발. 나는 모든 지표와 함께 산을 제거했습니다. 모든 것이 완전히 끝났습니다. 이제 설치되었으며 모든 것이 그대로 남아 있습니다. 어떻게 될 것인가? 다른 곳에 표시기의 복사본과 다른 모든 것이 저장되어 있습니까?
말해 주세요.
나는 간단한 스크립트를 작성했습니다 (보도 릴리스 전에 차트에 던지기 위해 시장에 가까운 양방향으로 두 개의 보류 주문을 설치하여 수동으로 소란을 피우지 않도록) 훨씬 쉬워 보이지만 작동하지 않습니다 , 주문을 열지 않으며 로그에 스크립트가 성공적으로 로드된 다음 같은 순간에 즉시 제거되었다고 기록합니다! 오류 없이 컴파일됩니다. 나는 그것을 전문가 형식으로 변환했습니다. 테스터를 체크인하기 위해 init 및 deinit를 추가하면 작동했습니다. 하지만 아시다시피 저는 전문가가 아니라 스크립트가 필요합니다.
여기서 무슨 문제가 있습니까? 미리 감사드립니다.
다음은 스크립트 코드입니다.
확인했습니다. 스크립트가 작동 중입니다.
만일을 대비하여 오류 인쇄를 인쇄하십시오:
말해 주세요.
나는 간단한 스크립트를 작성했습니다 (보도 릴리스 전에 차트에 던지기 위해 시장에 가까운 양방향으로 두 개의 보류 주문을 설치하여 수동으로 소란을 피우지 않도록) 훨씬 쉬워 보이지만 작동하지 않습니다 , 주문을 열지 않으며 로그에 스크립트가 성공적으로 로드된 다음 같은 순간에 즉시 제거되었다고 기록합니다! 오류 없이 컴파일됩니다. 나는 그것을 전문가 형식으로 변환했습니다. 테스터를 체크인하기 위해 init 및 deinit를 추가하면 작동했습니다. 하지만 아시다시피 저는 전문가가 아니라 스크립트가 필요합니다.
여기서 무슨 문제가 있습니까? 미리 감사드립니다.
4 자리에서 작동합니다. 5-sign에서는 확인하지 않았지만 StopLevel 수준에 대한 제한 사항에 대한 확인을 추가했습니다.
원칙적으로 실수를 방지하기 위해 4자리 또는 5자리의 포인트 조정을 할 수 있습니다. Delta 레벨은 5자리에서 10배 더 높아야 하기 때문에, 즉. 15가 아니라 150이고 각각 테이크에서 멈춥니다...그러면 다음과 같이 보일 것입니다.
좋은 아침 !
인덱스에 있는 사람이 프롬프트를 표시하지 않습니다...?
좋은 아침 !
인덱스에 있는 사람이 프롬프트를 표시하지 않습니다...?
바로, 인덱스입니다.
안녕하세요 !
말해봐, 제발, 무슨 일이야? 나는 고문을 GBPUSD 테스터에 넣었습니다. 모든 것이 예상대로 거래를 엽니다. 나는 그것을 DXH1 달러 인덱스에 넣었습니다 - 그것은 많은 거래를 열지 않습니다 : 오류 "130" - 잘못된 중지. 또한, 무엇이 잘못되었는지 명확하지 않습니다. 비슷한 상황에서 열리면 열리지 않지만 그렇지 않은 경우가 더 많습니다. 달러 인덱스 -100 및 200에 대한 스프레드 및 스탑 레벨. GBPUSD -3 및 4에 대한 스프레드 및 스탑 레벨. 달러 인덱스의 가격(예: 78,150 쌍) - 소수점 이하 4자리. 하지만 중요하다
다음은 코드의 일부입니다.
아무렇게나:
1) SL 및 TP가 정규화되지 않았습니다.
2) OrderSend 에서 Digits는 정규화에 사용되는 반면 주문은 Symb에 의해 수행됩니다.
다음과 같이 시도하십시오.
아무렇게나:
1) SL 및 TP가 정규화되지 않았습니다.
2) OrderSend에서는 정규화 시 Digits를 사용하고 Symb에서 주문합니다.
다음과 같이 시도하십시오.