커뮤니티
수식 관련 질문입니다
2019-07-02 14:38:04
137
글번호 129923
input : P1(1),P2(2);
var1 = ema(C,P1);
var2 = ema(C,P2);
if crossup(var1,var2) Then
buy("b",OnClose,def,6);
if CrossDown(var1,var2) Then
sell("s",OnClose,def,6);
if MarketPosition == 1 then
{
ExitLong("bx1",atlimit,EntryPrice+PriceScale*25,"",1,1);
ExitLong("bx2",atlimit,EntryPrice+PriceScale*35,"",1,1);
ExitLong("bx3",atlimit,EntryPrice+PriceScale*45,"",1,1);
ExitLong("bx4",atlimit,EntryPrice+PriceScale*55,"",1,1);
ExitLong("bx5",atlimit,EntryPrice+PriceScale*65,"",1,1);
ExitLong("bx6",atlimit,EntryPrice+PriceScale*75,"",1,1);
}
if MarketPosition == -1 then
{
ExitShort("sx1",atlimit,EntryPrice-PriceScale*25,"",1,1);
ExitShort("sx2",atlimit,EntryPrice-PriceScale*35,"",1,1);
ExitShort("sx3",atlimit,EntryPrice-PriceScale*45,"",1,1);
ExitShort("sx4",atlimit,EntryPrice-PriceScale*55,"",1,1);
ExitShort("sx5",atlimit,EntryPrice-PriceScale*65,"",1,1);
ExitShort("sx6",atlimit,EntryPrice-PriceScale*75,"",1,1);
}
답변 1
예스스탁 예스스탁 답변
2019-07-02 08:58:25
안녕하세요
예스스탁입니다.
1
올려주신 수식은 1계약씩 6회에 걸쳐 청산하는 내용입니다.
분할진입 분할청산은 진입조건에 따라 케이스가 다릅니다.
청산함수가 진입횟수만큼 발생하므로 각 청산은 진입이후 한번씩만 발생하고
지정한 가격조건에 충족되면 한번에 4계약씩 청산하게 수정해 드립니다.
if MarketPosition == 1 then
{
if countif(LatestExitName(0) == "bx1",BarsSinceEntry) < 1 then
ExitLong("bx1",atlimit,EntryPrice+PriceScale*25,"",4,1);
if countif(LatestExitName(0) == "bx2",BarsSinceEntry) < 1 then
ExitLong("bx2",atlimit,EntryPrice+PriceScale*35,"",4,1);
if countif(LatestExitName(0) == "bx3",BarsSinceEntry) < 1 then
ExitLong("bx3",atlimit,EntryPrice+PriceScale*45,"",4,1);
if countif(LatestExitName(0) == "bx4",BarsSinceEntry) < 1 then
ExitLong("bx4",atlimit,EntryPrice+PriceScale*55,"",4,1);
if countif(LatestExitName(0) == "bx5",BarsSinceEntry) < 1 then
ExitLong("bx5",atlimit,EntryPrice+PriceScale*65,"",4,1);
if countif(LatestExitName(0) == "bx6",BarsSinceEntry) < 1 then
ExitLong("bx6",atlimit,EntryPrice+PriceScale*75,"",4,1);
}
if MarketPosition == -1 then
{
if countif(LatestExitName(0) == "sx1",BarsSinceEntry) < 1 then
ExitShort("sx1",atlimit,EntryPrice-PriceScale*25,"",1,1);
if countif(LatestExitName(0) == "sx2",BarsSinceEntry) < 1 then
ExitShort("sx2",atlimit,EntryPrice-PriceScale*35,"",1,1);
if countif(LatestExitName(0) == "sx3",BarsSinceEntry) < 1 then
ExitShort("sx3",atlimit,EntryPrice-PriceScale*45,"",1,1);
if countif(LatestExitName(0) == "sx4",BarsSinceEntry) < 1 then
ExitShort("sx4",atlimit,EntryPrice-PriceScale*55,"",1,1);
if countif(LatestExitName(0) == "sx5",BarsSinceEntry) < 1 then
ExitShort("sx5",atlimit,EntryPrice-PriceScale*65,"",1,1);
if countif(LatestExitName(0) == "sx6",BarsSinceEntry) < 1 then
ExitShort("sx6",atlimit,EntryPrice-PriceScale*75,"",1,1);
}
2
하나의 컴퓨터에서 차트창을 3개 띄우시고 각각 종목 설정 하신후에
시스템 적용하시면 됩니다.
즐거운 하루되세요
> 이태리 님이 쓴 글입니다.
> 제목 : 수식 관련 질문입니다
> 예전에 수식 부탁드려 잘 받아보았습니다
스탠다드 종목이 아닌
micro 종목을 매매할려고요....
한번에 micro 4계약씩
6번 분할로 진입,청산하고 싶은데요
아래식을 어떻게 수정해야 하나요?
ExitLong("bx1",atlimit,EntryPrice+PriceScale*25,"",1,1);
ExitLong("bx2",atlimit,EntryPrice+PriceScale*35,"",1,1);
ExitLong("bx3",atlimit,EntryPrice+PriceScale*45,"",1,1);
ExitLong("bx4",atlimit,EntryPrice+PriceScale*55,"",1,1);
ExitLong("bx5",atlimit,EntryPrice+PriceScale*65,"",1,1);
ExitLong("bx6",atlimit,EntryPrice+PriceScale*75,"",1,1);
}
그리고
E-micro EUR/USD,micro E-mini NASDAQ-100,E-micro Gold
위 3종목을 모두 매매할려면
한개의 컴퓨터 모니터에 창을 3개 띄워야 하나요?
아님 3대의컴퓨터 3개모니터에 한종목씩 띄워야 하는지 궁금합니다
시스템매매 초보이니
자세하게 설명해 주심 도움 많이 되겠습니다
감사합니다^^
input : P1(1),P2(2);
var1 = ema(C,P1);
var2 = ema(C,P2);
if crossup(var1,var2) Then
buy("b",OnClose,def,6);
if CrossDown(var1,var2) Then
sell("s",OnClose,def,6);
if MarketPosition == 1 then
{
ExitLong("bx1",atlimit,EntryPrice+PriceScale*25,"",1,1);
ExitLong("bx2",atlimit,EntryPrice+PriceScale*35,"",1,1);
ExitLong("bx3",atlimit,EntryPrice+PriceScale*45,"",1,1);
ExitLong("bx4",atlimit,EntryPrice+PriceScale*55,"",1,1);
ExitLong("bx5",atlimit,EntryPrice+PriceScale*65,"",1,1);
ExitLong("bx6",atlimit,EntryPrice+PriceScale*75,"",1,1);
}
if MarketPosition == -1 then
{
ExitShort("sx1",atlimit,EntryPrice-PriceScale*25,"",1,1);
ExitShort("sx2",atlimit,EntryPrice-PriceScale*35,"",1,1);
ExitShort("sx3",atlimit,EntryPrice-PriceScale*45,"",1,1);
ExitShort("sx4",atlimit,EntryPrice-PriceScale*55,"",1,1);
ExitShort("sx5",atlimit,EntryPrice-PriceScale*65,"",1,1);
ExitShort("sx6",atlimit,EntryPrice-PriceScale*75,"",1,1);
}
다음글
이전글