예스스탁
예스스탁 답변
2016-03-18 10:30:10
안녕하세요
예스스탁입니다.
input : 당일수익틱수(70),당일손실틱수(30);
var : 당일수익(0),당일손실(0),NP(0),PreNP(0),dayPL(0),Xcond(false);
당일수익 = 당일수익틱수*PriceScale;
당일손실 = 당일손실틱수*PriceScale;
NP = NetProfit;
if bdate != bdate[1] Then{
PreNP = NP;
Xcond = false;
}
daypl = NP-preNP;
if CurrentContracts < CurrentContracts[1] and
(IsExitName("BP",1) == true or IsExitName("SP",1) == true or IsExitName("BL",1) == true or IsExitName("SL",1) == true) Then
Xcond = true;
var1 = StochasticsK(30,10);
var2 = StochasticsK(12,5);
if Xcond == false then {
if MarketPosition <= 0 and crossup(var1,70) Then
buy("b1");
if MarketPosition == 0 and (IsEntryName("b1",1) or IsEntryName("b1",2)) and crossup(var2,70) Then
buy("b2");
if MarketPosition == 1 and IsEntryName("b2") and CrossDown(var2,70) Then
ExitLong("bx");
if MarketPosition >= 0 and CrossDown(var1,70) Then
Sell("s1");
if MarketPosition == 0 and (IsEntryName("s1",1) or IsEntryName("s2",2)) and crossup(var2,70) Then
sell("s2");
if MarketPosition == -1 and IsEntryName("s2") and CrossUp(var2,30) Then
ExitShort("sx");
}
SetStopProfittarget(PriceScale*20,PointStop);
SetStopLoss(PriceScale*30,PointStop);
SetStopTrailing(PriceScale*10,PriceScale*20,PointStop);
if MarketPosition == 1 Then{
ExitLong("BP",AtLimit,EntryPrice+당일수익-daypl);
ExitLong("BL",AtStop,EntryPrice-당일손실-dayPL);
}
if MarketPosition == -1 Then{
ExitShort("SP",AtLimit,EntryPrice-당일수익+daypl);
ExitShort("SL",AtStop,EntryPrice+당일손실+daypl);
}
즐거운 하루되세요
> ysman 님이 쓴 글입니다.
> 제목 : 안녕하세요...
> 스토를 이용하여 시스템 전략을 작성코자 합니다.
------------------------------------------------------------------------------
스토1(30.10), 스토2(12.5) 일경우
매수 조건
1. 스토1이 과열 70선을 상향돌파 시 매수 (기본매수)
==> 20틱 익절 or 30틱 손절 or 최고가 20틱 대비 10틱 하락 시 스탑트레일링
2. 1 조건 이후 포지션이 없을 경우 스토2가 과열 70선을 상향돌파 시 재매수
(재매수는 2번가찌)
==> 20틱 익절 or 30틱 손절 or 최고가 20틱 대비 10틱 하락 시 스탑트레일링
또는 과열 70선을 하향돌파 시 강제청산함
매도 조건
반대의 경우 (침체 30)
강제청산
1. 해외영업일 기준 당일 수익 70틱 or 손실 50틱 이면 거래종료 후 익일 시작
-------------------------------------------------------------------------------
좋은 하루 보내세요...감사합니다.