예스스탁
예스스탁 답변
2019-12-05 11:46:25
안녕하세요
예스스탁입니다.
1
Input : RSIPeriod(14),RSI매수값(10),SimPeriod(14),심리도값(10);
Input : N1(2);
Input : 즉시익절1(100),즉시손절1(500);
input : 진입횟수(1);
Input : CCI기간(20),CCI값(200);
input : 분할매수횟수(2),분할매수틱수(115);
input : N(10);
Var : value(0);
var : BBmd(0),BBup(0),BBdn(0),CCIv(0),entry(0);
var :DNline1(0),RSIV(0),Simri(0),RSIVV(0);
RSIV = RSI(RSIPeriod);
Simri = Simrido(SimPeriod);
value = CCI(CCI기간);
if bdate != bdate[1] Then
Entry = 0;
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
entry = entry+1;
Condition1 = MarketPosition == 0 and
(IsExitName("즉시손절1",1) == false or
(IsExitName("즉시손절1",1) == true and BarsSinceExit(1) > N));
if entry < 진입횟수 then
{
if Condition1 == true and
MarketPosition <= 0 and TotalTrades == TotalTrades[1] and
countif( RSIV < RSI매수값 and Simri < 심리도값 ,N1 ) == N1 Then
buy("매수");
#추가진입
if MarketPosition == 1 and MaxEntries < 분할매수횟수 and
LatestEntryPrice(0)-PriceScale*분할매수틱수 > EntryPrice-PriceScale*즉시손절1 Then
buy("추가매수",atlimit,LatestEntryPrice(0)-PriceScale*분할매수틱수,1);
}
if MarketPosition == 1 then
{
if CrossDown(value,CCI값) Then
ExitLong("CCI청산");
ExitLong("즉시익절1",AtLimit,EntryPrice+PriceScale*즉시익절1);
ExitLong("즉시손절1",AtStop,EntryPrice-PriceScale*즉시손절1);
}
2
Input : RSIPeriod(14),RSI매수값(10),SimPeriod(14),심리도값(10);
Input : N1(2);
Input : 즉시익절1(100),즉시손절1(500);
input : 진입횟수(1);
Input : CCI기간(20),CCI값(200);
input : 분할매수횟수(2),분할매수틱수(115);
input : N(10);
Var : value(0);
var : BBmd(0),BBup(0),BBdn(0),CCIv(0),entry(0);
var :DNline1(0),RSIV(0),Simri(0),RSIVV(0);
RSIV = RSI(RSIPeriod);
Simri = Simrido(SimPeriod);
value = CCI(CCI기간);
if bdate != bdate[1] Then
{
Entry = 0;
Condition1 = false;
}
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
entry = entry+1;
if TotalTrades > TotalTrades[1] and IsExitName("즉시손절1",1) == true Then
Condition1 = false;
if entry < 진입횟수 then
{
if Condition1 == false and
MarketPosition <= 0 and TotalTrades == TotalTrades[1] and
countif( RSIV < RSI매수값 and Simri < 심리도값 ,N1 ) == N1 Then
buy("매수");
#추가진입
if MarketPosition == 1 and MaxEntries < 분할매수횟수 and
LatestEntryPrice(0)-PriceScale*분할매수틱수 > EntryPrice-PriceScale*즉시손절1 Then
buy("추가매수",atlimit,LatestEntryPrice(0)-PriceScale*분할매수틱수,1);
}
if MarketPosition == 1 then
{
if CrossDown(value,CCI값) Then
ExitLong("CCI청산");
ExitLong("즉시익절1",AtLimit,EntryPrice+PriceScale*즉시익절1);
ExitLong("즉시손절1",AtStop,EntryPrice-PriceScale*즉시손절1);
}
즐거운 하루되세요
> 이형지 님이 쓴 글입니다.
> 제목 : 기존 수식에 기능 추가( 청산후 일정(특정)봉 이후에 조건발생시 진입하는 수식 부여)
> 역추세 매매 수식인데요...
문제는 익절시에는 그러한 현상이 없는데 ( 역추세 매매이므로 )
손절시에는 거의 바로 체결되는 경우가 많아.... 노빠구 원웨이시장에서 연속으로
손실이 발생하는 경우가 발생하네요...
그래서 하루 거래 횟수로 조정하려고 했는데 1-2일간 노빠꾸 원웨이시장에선 누적손실이 많네요..
각설하고 아래 수식에 다음 기능을 부여 부탁드려요...
1번 수식 요청 )
청산후 10개 봉이후에 조건 발생시 진입하는 기능 추가
10개봉은 : 변수로 최적화 예정 (변수지정은 제가 할께요) 10으로 표기 요청
손실 청산되는 시점이 매수되는 조건이 되는 경우가 있어서 바로 진입되는 경우가 있더라고요 특히 급락할때.... 청산후 일정 봉이 지난후 조건시 진입되는 수식 요청
2번 수식 요청)
같은 컨셉이구요... 몇개봉 지난후 재진입 가능이아니라... 아예 손절하는 상황이 발생시에는
그날은아예 추가 진입이 되지 않도록 하는 수식부탁드려요...
거래 횟수 제한 수식이 기존 수식에 있는데요... 거래 횟수 제한 수치값과 별개로
이익시에는 거래횟수 제한 으로만 반영
손실시에는 거래횟수 제한 과 상관없이 해당일 추가 거래 안되게 요청합니다.
만약 2번 요청 수식이 물리적으로 복잡하고 어렵다면 ... 1번 수식만이라도 부탁드려요
사용 수식 - 해외선물 1분봉 매매
Input : RSIPeriod(14),RSI매수값(10),SimPeriod(14),심리도값(10);
Input : N1(2);
Input : 즉시익절1(100),즉시손절1(500);
input : 진입횟수(1);
Input : CCI기간(20),CCI값(200);
input : 분할매수횟수(2),분할매수틱수(115);
Var : value(0);
var : BBmd(0),BBup(0),BBdn(0),CCIv(0),entry(0);
var :DNline1(0),RSIV(0),Simri(0),RSIVV(0);
RSIV = RSI(RSIPeriod);
Simri = Simrido(SimPeriod);
value = CCI(CCI기간);
if bdate != bdate[1] Then
Entry = 0;
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
entry = entry+1;
if entry < 진입횟수 then
{
if MarketPosition <= 0 and countif( RSIV < RSI매수값 and Simri < 심리도값 ,N1 ) == N1 Then
buy("매수");
#추가진입
if MarketPosition == 1 and MaxEntries < 분할매수횟수 Then
buy("추가매수",atlimit,LatestEntryPrice(0)-PriceScale*분할매수틱수,1);
}
if MarketPosition == 1 then
{
if CrossDown(value,CCI값) Then
ExitLong("CCI청산");
ExitLong("즉시익절1",AtLimit,EntryPrice+PriceScale*즉시익절1);
ExitLong("즉시손절1",AtStop,EntryPrice-PriceScale*즉시손절1);
}