Вверх ↑
Ответов: 786
Рейтинг: 168
#1: 2021-07-30 06:25:07 ЛС | профиль | цитата
Pavel, Некоторые пояснения и вопросы.
1. Мой последний парсер только для одной пары валют. Ты туда загружаешь 14 пар!
2. У разных валют разный порядок цен. Их просто невозможно изобразить на одном графике.
3. Все визуальные компоненты самые медленные. И тормоза происходят из-за того, что они не успевают обработать очередь накопившихся сообщения. Проблемы со «временем» отсюда.
4. Время парсится из входящих сообщений. В ответе биржи 2 времени: время сделки и время сообщения, и они различаются. Какое «правильное»?
5. Если сделки совершаются в течении 2-5 секунд (высокочастотный трейдинг) то зачем постоянно перерисовывать данные за 24 часа? Разве недостаточно хранить и рисовать последние 10-30 минут?
6. Воспользуйся советом Леонида и присмотрись к компонентам из вкладки «Графика» в Hiasm. Сможешь рисовать любые графики каким хочешь цветом и быстродействие, я думаю, будет выше, чем у Plotter.
7. Извини, но ты очень странно используешь некоторые элементы. Старайся делать схемы без пересечения линий. Очень сложно понять твои примеры без предварительного «распутывания».
Add(MainForm,7714850,133,77)
{
Width=275
Height=112
Point(onClose)
link(onCreate,133730:doConsoleExec,[])
link(onClose,133730:doConsoleTerminate,[])
}
Add(BlockFind,2689203,343,91)
{
IncludeBlock=1
StartBlock="{"
EndBlock="}"
link(onSearch,6956214:doNext,[])
}
Add(WinExec,133730,189,77)
{
FileName="websocat_win32.exe"
Param="wss://stream.binance.com:9443/stream?streams=btcusdt@trade/xrpusdt@trade/ethusdt@trade/busdusdt@trade/axsusdt@trade/aliceusdt@trade/bnbusdt@trade/dotusdt@trade/dogeusdt@trade/adausdt@trade/tlmusdt@trade/runeusdt@trade/lunausdt@trade/usdcusdt@trade/maticusdt@trade"
Mode=0
Point(doConsoleExec)
Point(doConsoleTerminate)
Point(onConsoleResult)
Point(doConsoleInput)
Point(onConsoleError)
Point(onConsoleTerminate)
link(onConsoleResult,5437590:doReplace,[])
}
Add(Replace,5437590,245,91)
{
SubStr="""
link(onReplace,13454937:doSearch,[])
}
Add(BlockFind,13454937,294,91)
{
StartBlock="{e:trade"
EndBlock="true}"
link(onSearch,2689203:doSearch,[])
}
Add(Timer,13915431,350,140)
{
link(onTimer,5451177:doEvent1,[])
}
Add(Edit,1781743,441,140)
{
Left=180
Top=10
Text="0"
link(onChange,11247982:doCalc,[])
link(Str,6956214:Count,[])
}
Add(Edit,1640941,601,140)
{
Left=180
Top=35
Text="0"
link(Str,1781743:Text,[(607,124)(490,124)(490,183)(447,183)])
}
Add(Label,2961824,447,35)
{
Left=5
Top=35
Width=150
Height=20
Font=[MS Sans Serif,10,1,0,1]
Caption="MAX trades per sec"
AutoSize=1
Alignment=1
}
Add(Label,8719720,392,35)
{
Left=5
Top=10
Width=150
Height=20
Font=[MS Sans Serif,10,1,0,1]
Caption="trades per sec"
AutoSize=1
Alignment=1
}
Add(CounterEx,6956214,441,91)
{
Max=10000000
Point(doReset)
}
Add(Hub,5451177,392,140)
{
link(onEvent1,1781743:doText,[])
link(onEvent2,6956214:doReset,[(417,153)(417,104)])
}
Add(MathParse,11247982,497,140)
{
MathStr="max(%1, %2) * (%1 > %2)"
link(onResult,8490575:doCase,[])
link(X2,1640941:Text,[(510,131)(538,131)(538,180)(607,180)])
}
Add(Case,8490575,553,140)
{
Value=Integer(0)
link(onNextCase,1640941:doText,[])
}

(websocat_win32.exe должна лежать рядом со схемой)
карма: 15

0
Редактировалось 1 раз(а), последний 2021-07-30 06:54:23