커뮤니티

중괄호 질문

프로필 이미지
Good
2009-07-15 16:51:49
706
글번호 23498
답변완료
안녕하십니까.. 예스랭귀치 처음 사용하는 이용자 입니다. Q&A쪽 살펴보다 중괄호 에 관한 몇가지 글을 봤는데요 if 함수 사용시 Then뒤에 꼭 중괄호를 삽입 해야하는지 궁금합니다 예를 들어 if stime >= 90200 and stime <093000 and data2(c) > data2(OpenD(0)) and data3(c) > data3(OpenD(0)) and data4(c) > data4(OpenD(0))and data2(bids) >data2(asks) Then buy(); 와 if stime >= 90200 and stime <093000 and data2(c) > data2(OpenD(0)) and data3(c) > data3(OpenD(0)) and data4(c) > data4(OpenD(0))and data2(bids) >data2(asks) Then {buy();} 와 정확이 어떻게 구동되는지 알고 싶습니다. 그리고 다른 하나는 if MarketPosition == 1 then{ if highest(H,BarsSinceEntry)>=EntryPrice*(1+5/100) Then ExitLong(); } 즉 5%이상 상승하였을때 자동매도하는 프로그램을 작성해 봤습니다. 이렇게 작성하는게 맞는지 그리고 MarketPosition==1이 정확히 어떤 수식인지 그리고 MarketPosition()==1 와 MarketPosition==1와 차이가 없는지 알고싶습니다.. 너무 기초적인질문인거 잘 알지만 답변이나 이전에 동일한 질문있었으면 답변글이 몇번이었는지 라도 알려주십시요... 감사합니다..
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2009-07-15 18:44:08

안녕하세요 예스스탁입니다. 1. if stime >= 90200 and stime <093000 and data2(c) > data2(OpenD(0)) and data3(c) > data3(OpenD(0)) and data4(c) > data4(OpenD(0))and data2(bids) >data2(asks) Then buy(); 와 if stime >= 90200 and stime <093000 and data2(c) > data2(OpenD(0)) and data3(c) > data3(OpenD(0)) and data4(c) > data4(OpenD(0))and data2(bids) >data2(asks) Then {buy();} 는 같습니다. {}는 아래와 같이 if문 밑에 여러개의 실행문이 있을 때 일반적으로 사용합니다. if 조건 then{ buy(); var1 = H; var2 = L; } 실행문이 하나있을 때는 사용하셔도 되며 사용하지 않으셔도 무방합니다. 2. if MarketPosition == 1 then{ if highest(H,BarsSinceEntry)>=EntryPrice*(1+5/100) Then ExitLong(); } 진입이후의 고가가 진입가 대비 5%상승했을때 종가로 청산하는 식입니다. 그러므로 때에 따라서 종가가 5%가 안될 경우도 있습니다. 그러므로 해당 내용은 같은 경우에는 if MarketPosition == 1 then{ exitlong("Bx",atlimit,EntryPrice*1.05); } 나 혹은 강제청산 함수 중 목표이익 함수를 이용하시면 됩니다. SetStopProfittarget(5); 3. MarketPosition()==1 와 MarketPosition==1는 차이가 없습니다. 포지션 함수에는 매개변수가 있는데 0은 현재 진입된 포지션에 대해 1은 청산 완료된 가장 최근 거래,2는 그 전 거래로 어떤 값을 가져와 사용하실 수 있습니다 MarketPosition(0)에서 0은 생략가능하며 0을 생략시에는 ()로 생략가능합니다. 즐거운 하루되세요 > Good 님이 쓴 글입니다. > 제목 : 중괄호 질문 > 안녕하십니까.. 예스랭귀치 처음 사용하는 이용자 입니다. Q&A쪽 살펴보다 중괄호 에 관한 몇가지 글을 봤는데요 if 함수 사용시 Then뒤에 꼭 중괄호를 삽입 해야하는지 궁금합니다 예를 들어 if stime >= 90200 and stime <093000 and data2(c) > data2(OpenD(0)) and data3(c) > data3(OpenD(0)) and data4(c) > data4(OpenD(0))and data2(bids) >data2(asks) Then buy(); 와 if stime >= 90200 and stime <093000 and data2(c) > data2(OpenD(0)) and data3(c) > data3(OpenD(0)) and data4(c) > data4(OpenD(0))and data2(bids) >data2(asks) Then {buy();} 와 정확이 어떻게 구동되는지 알고 싶습니다. 그리고 다른 하나는 if MarketPosition == 1 then{ if highest(H,BarsSinceEntry)>=EntryPrice*(1+5/100) Then ExitLong(); } 즉 5%이상 상승하였을때 자동매도하는 프로그램을 작성해 봤습니다. 이렇게 작성하는게 맞는지 그리고 MarketPosition==1이 정확히 어떤 수식인지 그리고 MarketPosition()==1 와 MarketPosition==1와 차이가 없는지 알고싶습니다.. 너무 기초적인질문인거 잘 알지만 답변이나 이전에 동일한 질문있었으면 답변글이 몇번이었는지 라도 알려주십시요... 감사합니다..