Gunta, График должен быть ‘life’ это критично. Так как на визуальном анализе графика, будет происходить моментальная, краткосрочная сделка ( Скальперская), и эта сделка будет происходить прям на этом графике чтоб ее контролировать. Леонид писал(а): Вы лучше выложите формат получаемых вами данных после парсинга, частоту получения данных, да нарисовали бы в Paint-е желаемый вид графика. А "рюшечки" дело десятое, можно украсить и потом Вот два желаемых результата как пример. 1) 2) Вот скриншот линии которая при изменении данных меняет свой цвет и толщину Вот пример данных исходя которых строится график. Ось X строится по локальному Unix time +1 секунда и на него уже накладывается точка полученная с биржи привязанная к Unix time. Осю Y Строится по данным цены с биржи. Add(MainForm,2953706,259,266) { Width=780 Height=675 link(onCreate,13585400:doEnum,[]) } Add(StrList,4076137,539,168) { Strings=#157:trade","E":1627323684919,"s":"BTCUSDT","t":970310967,"p":"39616.19000000","q":"0.00498500","b":6940921289,"a":6940921291,"T":1627323684919,"m":true,"M":true}|163:{"e":"trade","E":1627323684926,"s":"BTCUSDT","t":970310968,"p":"39616.19000000","q":"0.08191300","b":6940921289,"a":6940921293,"T":1627323684925,"m":true,"M":true}|164:{"e":"trade","E":1627323684953,"s":"BTCUSDT","t":970310969,"p":"39616.20000000","q":"0.00114100","b":6940921297,"a":6940921282,"T":1627323684952,"m":false,"M":true}|163:{"e":"trade","E":1627323684972,"s":"BTCUSDT","t":970310970,"p":"39616.19000000","q":"0.00091500","b":6940921289,"a":6940921300,"T":1627323684971,"m":true,"M":true}|163:{"e":"trade","E":1627323684973,"s":"BTCUSDT","t":970310971,"p":"39616.19000000","q":"0.06937900","b":6940921289,"a":6940921301,"T":1627323684972,"m":true,"M":true}|163:{"e":"trade","E":1627323685014,"s":"BTCUSDT","t":970310972,"p":"39616.19000000","q":"0.01868900","b":6940921289,"a":6940921309,"T":1627323685013,"m":true,"M":true}|163:{"e":"trade","E":1627323685069,"s":"BTCUSDT","t":970310973,"p":"39613.09000000","q":"0.00648000","b":6940921294,"a":6940921316,"T":1627323685069,"m":true,"M":true}|163:{"e":"trade","E":1627323685081,"s":"BTCUSDT","t":970310974,"p":"39613.09000000","q":"0.02550000","b":6940921294,"a":6940921321,"T":1627323685080,"m":true,"M":true}|164:{"e":"trade","E":1627323685267,"s":"BTCUSDT","t":970310975,"p":"39613.10000000","q":"0.00129700","b":6940921333,"a":6940921317,"T":1627323685266,"m":false,"M":true}|163:{"e":"trade","E":1627323685372,"s":"BTCUSDT","t":970310976,"p":"39613.09000000","q":"0.00781400","b":6940921294,"a":6940921337,"T":1627323685372,"m":true,"M":true}|164:{"e":"trade","E":1627323685439,"s":"BTCUSDT","t":970310977,"p":"39610.83000000","q":"0.00126400","b":6940921348,"a":6940921345,"T":1627323685439,"m":false,"M":true}|163:{"e":"trade","E":1627323685450,"s":"BTCUSDT","t":970310978,"p":"39610.82000000","q":"0.07990300","b":6940921343,"a":6940921352,"T":1627323685450,"m":true,"M":true}|163:{"e":"trade","E":1627323685450,"s":"BTCUSDT","t":970310979,"p":"39610.82000000","q":"0.22865300","b":6940921344,"a":6940921352,"T":1627323685450,"m":true,"M":true}|164:{"e":"trade","E":1627323685497,"s":"BTCUSDT","t":970310980,"p":"39610.83000000","q":"0.00241300","b":6940921357,"a":6940921345,"T":1627323685496,"m":false,"M":true}|163:{"e":"trade","E":1627323685544,"s":"BTCUSDT","t":970310981,"p":"39610.82000000","q":"0.00764900","b":6940921344,"a":6940921362,"T":1627323685543,"m":true,"M":true}|164:{"e":"trade","E":1627323685617,"s":"BTCUSDT","t":970310982,"p":"39610.83000000","q":"0.00814000","b":6940921366,"a":6940921345,"T":1627323685616,"m":false,"M":true}|164:{"e":"trade","E":1627323685716,"s":"BTCUSDT","t":970310983,"p":"39610.83000000","q":"0.00041500","b":6940921375,"a":6940921345,"T":1627323685715,"m":false,"M":true}|164:{"e":"trade","E":1627323685755,"s":"BTCUSDT","t":970310984,"p":"39610.83000000","q":"0.02000000","b":6940921380,"a":6940921345,"T":1627323685754,"m":false,"M":true}|163:{"e":"trade","E":1627323685765,"s":"BTCUSDT","t":970310985,"p":"39610.82000000","q":"0.00112500","b":6940921344,"a":6940921394,"T":1627323685764,"m":true,"M":true}|164:{"e":"trade","E":1627323685807,"s":"BTCUSDT","t":970310986,"p":"39610.83000000","q":"0.18920500","b":6940921400,"a":6940921345,"T":1627323685806,"m":false,"M":true}|163:{"e":"trade","E":1627323685858,"s":"BTCUSDT","t":970310987,"p":"39610.82000000","q":"0.00055500","b":6940921344,"a":6940921412,"T":1627323685857,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310988,"p":"39610.82000000","q":"0.00334800","b":6940921344,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310989,"p":"39610.82000000","q":"0.06000000","b":6940921353,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310990,"p":"39610.82000000","q":"0.15000000","b":6940921369,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310991,"p":"39610.82000000","q":"0.35000000","b":6940921370,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310992,"p":"39610.82000000","q":"0.50000000","b":6940921371,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310993,"p":"39610.82000000","q":"0.00227100","b":6940921397,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310994,"p":"39610.81000000","q":"0.27517000","b":6940921258,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310995,"p":"39610.80000000","q":"0.12149600","b":6940921100,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310996,"p":"39610.79000000","q":"0.01750600","b":6940921133,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685913,"s":"BTCUSDT","t":970310997,"p":"39610.79000000","q":"0.00378600","b":6940921398,"a":6940921415,"T":1627323685912,"m":true,"M":true}|163:{"e":"trade","E":1627323685927,"s":"BTCUSDT","t":970310998,"p":"39607.03000000","q":"0.00287900","b":6940921390,"a":6940921420,"T":1627323685926,"m":true,"M":true}|164:{"e":"trade","E":1627323685968,"s":"BTCUSDT","t":970310999,"p":"39607.42000000","q":"0.01379400","b":6940921434,"a":6940921428,"T":1627323685967,"m":false,"M":true}|164:{"e":"trade","E":1627323686001,"s":"BTCUSDT","t":970311000,"p":"39607.42000000","q":"0.21760800","b":6940921442,"a":6940921428,"T":1627323686000,"m":false,"M":true}|164:{"e":"trade","E":1627323686075,"s":"BTCUSDT","t":970311001,"p":"39610.79000000","q":"0.33333300","b":6940921466,"a":6940921415,"T":1627323686074,"m":false,"M":true}|164:{"e":"trade","E":1627323686077,"s":"BTCUSDT","t":970311002,"p":"39610.79000000","q":"0.33333300","b":6940921467,"a":6940921415,"T":1627323686077,"m":false,"M":true}|164:{"e":"trade","E":1627323686089,"s":"BTCUSDT","t":970311003,"p":"39610.79000000","q":"0.01180600","b":6940921471,"a":6940921415,"T":1627323686089,"m":false,"M":true}|164:{"e":"trade","E":1627323686153,"s":"BTCUSDT","t":970311004,"p":"39615.64000000","q":"0.00224400","b":6940921498,"a":6940921488,"T":1627323686153,"m":false,"M":true}|164:{"e":"trade","E":1627323686222,"s":"BTCUSDT","t":970311005,"p":"39615.64000000","q":"0.00237600","b":6940921508,"a":6940921501,"T":1627323686221,"m":false,"M":true}|163:{"e":"trade","E":1627323686230,"s":"BTCUSDT","t":970311006,"p":"39615.63000000","q":"0.01049700","b":6940921504,"a":6940921510,"T":1627323686229,"m":true,"M":true}|163:{"e":"trade","E":1627323686266,"s":"BTCUSDT","t":970311007,"p":"39615.70000000","q":"0.01990900","b":6940921520,"a":6940921525,"T":1627323686265,"m":true,"M":true}|163:{"e":"trade","E":1627323686266,"s":"BTCUSDT","t":970311008,"p":"39615.63000000","q":"0.00043200","b":6940921505,"a":6940921525,"T":1627323686265,"m":true,"M":true}|163:{"e":"trade","E":1627323686275,"s":"BTCUSDT","t":970311009,"p":"39615.63000000","q":"0.00249000","b":6940921514,"a":6940921532,"T":1627323686275,"m":true,"M":true}|163:{"e":"trade","E":1627323686300,"s":"BTCUSDT","t":970311010,"p":"39615.63000000","q":"0.01011200","b":6940921514,"a":6940921536,"T":1627323686299,"m":true,"M":true}|164:{"e":"trade","E":1627323686432,"s":"BTCUSDT","t":970311011,"p":"39613.11000000","q":"0.02534800","b":6940921563,"a":6940921538,"T":1627323686431,"m":false,"M":true}|163:{"e":"trade","E":1627323686448,"s":"BTCUSDT","t":970311012,"p":"39613.10000000","q":"0.00025500","b":6940921534,"a":6940921565,"T":1627323686447,"m":true,"M":true}|163:{"e":"trade","E":1627323686448,"s":"BTCUSDT","t":970311013,"p":"39612.72000000","q":"0.00025700","b":6940921559,"a":6940921565,"T":1627323686447,"m":true,"M":true}|164:{"e":"trade","E":1627323686570,"s":"BTCUSDT","t":970311014,"p":"39613.11000000","q":"0.00135800","b":6940921584,"a":6940921538,"T":1627323686569,"m":false,"M":true}|164:{"e":"trade","E":1627323686612,"s":"BTCUSDT","t":970311015,"p":"39613.11000000","q":"0.00049800","b":6940921586,"a":6940921538,"T":1627323686612,"m":false,"M":true}|164:{"e":"trade","E":1627323686715,"s":"BTCUSDT","t":970311016,"p":"39613.11000000","q":"0.00049800","b":6940921595,"a":6940921538,"T":1627323686714,"m":false,"M":true}|163:{"e":"trade","E":1627323686784,"s":"BTCUSDT","t":970311017,"p":"39613.10000000","q":"0.00027700","b":6940921573,"a":6940921610,"T":1627323686784,"m":true,"M":true}|164:{"e":"trade","E":1627323686858,"s":"BTCUSDT","t":970311018,"p":"39613.11000000","q":"0.21804400","b":6940921625,"a":6940921538,"T":1627323686857,"m":false,"M":true}|164:{"e":"trade","E":1627323686861,"s":"BTCUSDT","t":970311019,"p":"39613.11000000","q":"0.00077000","b":6940921626,"a":6940921538,"T":1627323686861,"m":false,"M":true}| } Add(ArrayEnum,13585400,553,280) { link(onItem,9089905:doEvent3,[]) link(Array,4076137:Array,[]) } Add(RichEdit,1147971,1015,266) { Left=5 Top=270 Width=735 Height=340 } Add(Hub,9089905,658,266) { InCount=3 OutCount=13 link(onEvent1,1147971:doAdd,[]) link(onEvent2,8080983:doWork1,[(767,279)(767,314)]) link(onEvent3,12138233:doWork1,[(758,286)(758,356)]) link(onEvent5,8054774:doWork1,[(751,300)(751,398)]) link(onEvent6,2741084:doWork1,[(743,307)(743,440)]) link(onEvent7,7879158:doWork1,[(734,314)(734,482)]) link(onEvent8,6702111:doWork1,[(726,321)(726,524)]) link(onEvent9,3257741:doWork1,[(718,328)(718,566)]) link(onEvent10,14891572:doWork1,[(711,335)(711,608)]) } Add(Edit,12879061,951,308) { Left=5 Top=105 Width=565 Text="Unix : %1 Time server : %2" } Add(MultiElement,8080983,889,308) { link(onEvent1,12879061:doText,[]) } BEGIN_SDK Add(EditMulti,11302727,21,21) { EventCount=2 WorkCount=1 Width=944 Height=564 link(doWork1,7422443:doSearch,[(157,27)(157,188)]) } Add(BlockFind,7422443,294,182) { IncludeBlock=1 StartBlock=""E":" EndBlock=","s"" link(onSearch,1379986:doEvent1,[]) } Add(DateConvertor,1889570,448,182) { Mode=16 Format="HH:mm:ss" link(onResult,1684147:doData,[]) } Add(Math,5970902,399,182) { OpType=3 Op2=1000 ResultType=0 link(onResult,1889570:doConvert,[]) } Add(Hub,1379986,350,182) { OutCount=3 link(onEvent1,11302727:onEvent2,[(664,188)(664,34)]) link(onEvent2,5970902:doOperation,[(382,195)(382,188)]) link(onEvent3,12743231:doString,[(430,202)(430,251)]) } Add(FormatStr,12743231,497,245) { Mask="Unix : %1 Time server : %2" link(onFString,11302727:onEvent1,[(747,251)(747,27)]) link(Str1,1684147:GetData,[]) } Add(EventFromData,1684147,497,182) { } END_SDK Add(Edit,3475109,951,350) { Left=5 Top=125 Width=565 Text="Пара : %1 %2" } Add(MultiElement,12138233,889,350) { link(onEvent1,3475109:doText,[]) } BEGIN_SDK Add(EditMulti,10630780,21,21) { EventCount=2 WorkCount=1 Width=706 link(doWork1,14658344:doSearch,[(123,27)(123,83)]) } Add(BlockFind,14658344,224,77) { IncludeBlock=1 StartBlock=""s":"" EndBlock="","t":" link(onSearch,8682541:doEvent1,[]) } Add(FormatStr,13927428,315,49) { Mask="Пара : %1 %2" link(onFString,10630780:onEvent1,[(523,55)(523,27)]) } Add(Hub,8682541,266,77) { link(onEvent1,10630780:onEvent2,[(504,83)(504,34)]) link(onEvent2,13927428:doString,[(298,90)(298,55)]) } END_SDK Add(MultiElement,2741084,889,434) { link(onEvent1,1192461:doText,[]) } BEGIN_SDK Add(EditMulti,12393502,21,21) { EventCount=2 WorkCount=1 link(doWork1,1542632:doSearch,[(49,27)(49,104)]) } Add(BlockFind,1542632,77,98) { IncludeBlock=1 StartBlock=""p":"" EndBlock="","q":"" link(onSearch,13676925:doEvent1,[]) } Add(FormatStr,4748933,217,35) { Mask="Цена : %1" link(onFString,12393502:onEvent1,[(288,41)(288,27)]) } Add(Hub,13676925,154,98) { link(onEvent1,12393502:onEvent2,[(244,104)(244,34)]) link(onEvent2,4748933:doString,[(192,111)(192,41)]) } END_SDK Add(Edit,8897171,951,392) { Left=5 Top=145 Width=565 Text="Идентификатор ID" } Add(MultiElement,8054774,889,392) { link(onEvent1,8897171:doText,[]) } BEGIN_SDK Add(EditMulti,9585953,21,21) { EventCount=2 WorkCount=1 Width=881 link(doWork1,424614:doSearch,[(105,27)(105,125)]) } Add(BlockFind,424614,189,119) { IncludeBlock=1 StartBlock="","t":" EndBlock=","p":" link(onSearch,13828745:doEvent1,[]) } Add(FormatStr,1319619,308,63) { Mask="Идентификатор ID : %1" link(onFString,9585953:onEvent1,[(348,69)(348,27)]) } Add(Hub,13828745,238,119) { link(onEvent1,9585953:onEvent2,[(577,125)(577,34)]) link(onEvent2,1319619:doString,[(280,132)(280,69)]) } END_SDK Add(Edit,1192461,951,434) { Left=5 Top=165 Width=565 Text="Цена : %1" } Add(MultiElement,7879158,889,476) { link(onEvent1,10338547:doText,[]) } BEGIN_SDK Add(EditMulti,9791462,21,21) { EventCount=2 WorkCount=1 link(doWork1,15710817:doSearch,[(49,27)(49,104)]) } Add(BlockFind,15710817,77,98) { IncludeBlock=1 StartBlock="","q":"" EndBlock="","b":" link(onSearch,16578545:doEvent1,[]) } Add(FormatStr,1686219,210,35) { Mask="Объем : %1" link(onFString,9791462:onEvent1,[(288,41)(288,27)]) } Add(Hub,16578545,161,98) { link(onEvent1,9791462:onEvent2,[(248,104)(248,34)]) link(onEvent2,1686219:doString,[(193,111)(193,41)]) } END_SDK Add(Edit,10338547,951,476) { Left=5 Top=185 Width=565 Text="Объем : %1" } Add(MultiElement,6702111,889,518) { link(onEvent1,10284561:doText,[]) } BEGIN_SDK Add(EditMulti,10499263,21,21) { EventCount=2 WorkCount=1 link(doWork1,10334118:doSearch,[(49,27)(49,104)]) } Add(BlockFind,10334118,77,98) { IncludeBlock=1 StartBlock=","T":" EndBlock=","m":" link(onSearch,13994195:doEvent1,[]) } Add(FormatStr,7302733,203,35) { Mask="Время сделки : %1" link(onFString,10499263:onEvent1,[(288,41)(288,27)]) } Add(Hub,13994195,147,98) { link(onEvent1,10499263:onEvent2,[(241,104)(241,34)]) link(onEvent2,7302733:doString,[(182,111)(182,41)]) } END_SDK Add(Edit,7499841,951,560) { Left=5 Top=205 Width=565 Text="Идентификатор заказа покупателя buy : %1" } Add(MultiElement,3257741,889,560) { link(onEvent1,7499841:doText,[]) } BEGIN_SDK Add(EditMulti,12164554,21,21) { EventCount=2 WorkCount=1 link(doWork1,3080741:doSearch,[(49,27)(49,104)]) } Add(BlockFind,3080741,77,98) { IncludeBlock=1 StartBlock="","b":" EndBlock=","a":" link(onSearch,14316220:doEvent1,[]) } Add(FormatStr,10126641,203,28) { Mask="Идентификатор заказа покупателя buy : %1" link(onFString,12164554:onEvent1,[(288,34)(288,27)]) } Add(Hub,14316220,161,98) { link(onEvent1,12164554:onEvent2,[(248,104)(248,34)]) link(onEvent2,10126641:doString,[(189,111)(189,34)]) } END_SDK Add(Edit,5105345,951,602) { Left=5 Top=245 Width=565 Text="Идентификатор заказа продавца ask : %1t" } Add(MultiElement,14891572,889,602) { link(onEvent1,5105345:doText,[]) } BEGIN_SDK Add(EditMulti,991720,21,21) { EventCount=2 WorkCount=1 link(doWork1,16182850:doSearch,[(49,27)(49,104)]) } Add(BlockFind,16182850,77,98) { IncludeBlock=1 StartBlock=","a":" EndBlock=","T":" link(onSearch,16411972:doEvent1,[]) } Add(FormatStr,7468902,203,21) { Mask="Идентификатор заказа продавца ask : %1" link(onFString,991720:onEvent1,[]) } Add(Hub,16411972,154,98) { link(onEvent1,991720:onEvent2,[(244,104)(244,34)]) link(onEvent2,7468902:doString,[(186,111)(186,27)]) } END_SDK Add(Edit,10284561,951,518) { Left=5 Top=225 Width=565 Text="Время сделки : %1" } Add(InfoTip,8631987,483,119) { Info=#37:данных может быть 65 строк в секунду.| Width=155 Height=137 }
Вот что имею на данный момент Зеленый цвет всегда по верх красного, И при масштабе графика роликом мышки графит смещается по всем осям. Редактировалось 3 раз(а), последний 2021-07-28 10:46:08
|